C++ =运算符的重载
我想重载=运算符。它应该是这样工作的:C++ =运算符的重载,c++,operator-overloading,C++,Operator Overloading,我想重载=运算符。它应该是这样工作的: MyClass a; double b=a; 我该怎么做 Tschüss,Andre那不是操作符=(赋值)。这是一个初始化器。通常,您可以通过提供一个将MyClass作为参数的构造函数来执行类似的操作—但是,对于double,您不能这样做。相反,您需要为MyClass提供一个转换函数: class MyClass { public: operator double() const { return 5.0; } };
MyClass a;
double b=a;
我该怎么做
Tschüss,Andre那不是
操作符=
(赋值)。这是一个初始化器。通常,您可以通过提供一个将MyClass
作为参数的构造函数来执行类似的操作—但是,对于double
,您不能这样做。相反,您需要为MyClass
提供一个转换函数:
class MyClass
{
public:
operator double() const { return 5.0; }
};