定义结构体时,希望重载“=”运算符,但是总是报错:
1>c:\program files (x86)\microsoft visual studio 9.0\vc\include\xutility(3159) : error C2679: 二进制“=”: 没有找到接受“const PT3”类型的右操作数的运算符(或没有可接受的转换)
。。。。。。。。。。。
后来发现,参数传递要使用“const”
1 struct PT3 2 { 3 double x, y, z; 4 PT3() 5 { 6 x = 0; y = 0; z = 0; 7 } 8 PT3(double vx, double vy, double vz) 9 { 10 x = vx; y = vy; z = vz; 11 } 12 PT3& operator=(const PT3& vpt) 13 { 14 x = vpt.x; y = vpt.y; z = vpt.z; 15 return *this; 16 } 17 };