解题思路:主要需要考虑以下四个方面
(1)把返回值的类型声明为该类型的引用,并在函数结束前返回自身的引用(即*this),只有返回一个引用才能保证连续赋值;
(2)把传入的参数类型声明为常量引用,可以避免多次调用构造函数造成无谓的内存损耗;
(3)是否释放实例自身的内存,如果在分配新内存前为释放之前的内存,则会造成内存泄露;
(4)是否判断传入的实例和当前的实例是否为同一个实例
解题思路:主要需要考虑以下四个方面
(1)把返回值的类型声明为该类型的引用,并在函数结束前返回自身的引用(即*this),只有返回一个引用才能保证连续赋值;
(2)把传入的参数类型声明为常量引用,可以避免多次调用构造函数造成无谓的内存损耗;
(3)是否释放实例自身的内存,如果在分配新内存前为释放之前的内存,则会造成内存泄露;
(4)是否判断传入的实例和当前的实例是否为同一个实例