【发布时间】:2016-04-08 11:48:35
【问题描述】:
当我们定义复制构造函数时,是否需要清除我们正在写入的对象的内容?我正在实现一个二叉搜索树,并且想知道除非我在实现复制构造函数和赋值运算符时清理它,否则我是否不会发生内存泄漏。
【问题讨论】:
-
清除什么?还没建好,没有什么要清理的。
-
不清楚你在问什么。只需确保任何分配都与一个释放配对(new/delete、new[]/delete[]、malloc/free、...)
-
如果您正在定义一个复制构造函数,那么当您从头开始构建时,就没有什么需要清理的了。
-
你在写什么对象?在对象创建时调用构造函数。
-
您是否将复制构造函数与赋值运算符混淆了?
标签: c++ copy-constructor assignment-operator