发布网友 发布时间:2024-10-19 02:21
共2个回答
热心网友 时间:2024-11-07 15:47
这个问题很不错唉,有一个问题,举个例子来说,假设有一个类apple,apple a1 = ap2;(ap2已经定义好)与apple a1; a1 = a2;的结果是不一样的,前者是用复制构造函数对a1进行初始化,而第二种形式是先调用构造函数对a1初始化(假设无参),然后调用赋值运算符对象a2的所有成员的值赋值到对象a1中,ok,此时假说如apple中有指针类型的成员变量,这时就存在两个指针指向同一块内存区域的问题,极易造成内存泄漏,此时需要对赋值运算符进行重载,例如:热心网友 时间:2024-11-07 15:41
破坏封装,那样会使成员变量就像全局变量那样被任意赋值了