C++箴言:拷贝一个对象的所有组成部分(二)

2014-11-24 13:16:32 · 作者: · 浏览: 14
已初始化对象才有意义。简直是胡搞!不要做这种尝试。

  作为一种代替,如果你 发现你的拷贝构造函数和拷贝赋值运算符有相似的代码,通过创建第三个供两者调用的成员函数来消除重复。这样的函数当然是 private 的,而且经常叫做 init。这一策略是在拷贝构造函数和拷贝赋值运算符中消除代码重复的安全的,被证实过的方法。

  Things to Remember

   拷贝函数应该保证拷贝一个对象的所有数据成员以及所有的基类部分。

   不要试图依据一个拷贝函数实现另一个。作为代替,将通用功能放入第三个供双方调用的函数。