【发布时间】:2011-06-13 20:55:38
【问题描述】:
【问题讨论】:
-
投票结束我自己的问题。
标签: c++
【问题讨论】:
标签: c++
通常,在需要定义自己的复制构造函数的相同情况下,您需要定义自己的赋值运算符 - 即当默认副本不会剪切它时。当您的对象管理需要特别复制的动态分配的内存或其他资源时,就会发生这种情况。
例如,如果您有一个管理指向动态分配内存的指针的类,则默认赋值运算符将简单地复制 指针。通常,这不是您想要的 - 您希望每个对象实例都有自己的已分配数据的内部 副本,因此您需要一个特殊的赋值运算符来分配自己的内存并执行复制。例如,这是 std::vector 在复制或分配时需要执行的操作。
【讨论】:
mutex