【发布时间】:2015-07-11 11:17:58
【问题描述】:
我对构造函数和赋值运算符有疑问。这是我的代码:
class Class
{
private:
double number1;
double number2;
public:
Class(double, double);
Class& operator=(const Class& n);
}
Class::Class(double n1 = 0.0, double n2 = 0.0)
{
this->number1 = n1;
this->number2 = n2;
}
Class& operator=(const Class& n)
{
this->number1 = n.number1;
this->number2 = n.number2;
return *this;
}
int main()
{
Class n1(2., 3.), n2(7., -1.), n3();
n2 = n1; // no problem
n3 = n1; // problem
return 0;
}
能否请教一下,为什么main中的第二个作业有问题?
非常感谢
编辑:出现以下错误:
[Error] assignment of function 'Complex cislo2()'
[Error] cannot convert 'Complex' to 'Complex()' in assignment
【问题讨论】:
-
您遇到了什么问题?编译错误?运行时错误?您可以在问题中包含错误吗?
-
我在原帖中添加了错误
-
What does A a() mean? 的可能重复项
标签: c++ operators constructor