zoukankan      html  css  js  c++  java
  • [原]C++关于运算符重载的程序报错error…

    错误信息如下:
    1>t2.obj error LNK2019: 无法解析的外部符号 "public: __thiscall Date::Date(void)" (??0Date@@QAE@XZ),该符号在函数 "class Date __cdecl operator+(class Date const &,class Date const &)" (??H@YA?AVDate@@ABV0@0@Z) 中被引用
    1>C:UsersChengyaoDocumentsWorkspacesVisual Studio 2012ProjectsTest11DebugTest12.exe fatal error LNK1120: 个无法解析的外部命令

    代码如下:
    C/C++ code
    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #include
    using namespace std;
    class Date{
        int m_y;
        int m_m;
        int m_d;
    public:
        Date();
        Date(int y,int m,int d){
            m_y=y;
            m_m=m;
            m_d=d;
        }
    public:
        void set(int y,int m,int d){
            m_y=y;
            m_m=m;
            m_d=d;
        }
        friend Date operator+(const Date& d1,const Date& d2){
            Date d;
            d.set(d1.m_y+d2.m_y,d1.m_m+d2.m_m,d1.m_d+d2.m_d);
            return d;
        }
        void display(){
            cout<<"The date is:"<<m_y<<","<<m_m<<","<<m_d<<endl;
        }
    };
    int main(){
        Date d1(2009,11,10);
        d1.display();
        Date d2(1,1,1);
        d2.display();
        (d1+d2).display();
    }

    解决办法:
    1
    2
    3
    Date()
    {
    };//改成这样
    构造函数没有定义。
    作者:gcy77 发表于2014-3-12 15:16:26 原文链接
    阅读:68 评论:0 查看评论
  • 相关阅读:
    对list集合中的对象进行排序(转载)
    关键字的作用
    CocoaPods的 安装 /卸载/升级
    block基本使用和底层
    程序启动 - 类调用的方法
    成员变量修饰词的作用
    宏(define)与常量(const)
    iOS
    监听网络状态
    nil、Nil、NULL与NSNull的区别及应用
  • 原文地址:https://www.cnblogs.com/gcy77/p/4082493.html
Copyright © 2011-2022 走看看