2 u014440875 u014440875 于 2014.03.30 00:59 提问

c++的运算符重载冲突问题

在一个类中,重载了运算符“+”和“=”;
"+" 运算符返回值是这个类的对象;
当表达式 C = A + B;是否冲突了?
谢谢。

2个回答

qq051121
qq051121   2014.04.06 20:56

A+B 如果不是返回引用的话那么是个临时对象,再将一个对象 调用重载的 = ,我觉得不好冲突啊。
你写的程序冲突了吗?

u012492669
u012492669   2014.04.13 19:44

注意是不是deep的拷贝了,如果不是deep的拷贝的话,指针类的,&类的,和new有关的时候,可能会delete多次
关键是一个temp的对象离开了语句,就自己销毁了,然后你没有深拷贝就是指向了一个被delete过得区域

Csdn user default icon
上传中...
上传图片
插入图片