我正在学习 C++,我有一个关于赋值运算符的问题。
根据这里写的内容https://en.cppreference.com/w/cpp/language/copy_assignment,似乎
...一个类可以有多个复制赋值运算符,例如 T& T::operator=(const T &) 和 T& T::operator=(T)。
我试图用两个运算符创建一个类,但我看不出我错在哪里,因为我从编译器中得到了这个:
错误 C2593:“运算符 =”不明确*
这是课程:
class Point2D
{
public:
Point2D(); // default constructor
Point2D(double xValue, double yValue); // overloaded constructor
Point2D(const Point2D& ref); // copy constructor const
Point2D(Point2D& ref); // copy constructor for copy and swap
Point2D(Point2D&& moveRef); // move constructor
~Point2D(); // destructor
Point2D& operator=( const Point2D& other ); // copy assignment operator const
Point2D& operator=( Point2D other ); // copy assignment operator for copyAndSwap
private: …Run Code Online (Sandbox Code Playgroud) c++ operator-overloading assignment-operator language-lawyer