关于指针的深拷贝

时间:2022-08-31 19:32:40
class A
{
private:
        CArray<B*,B*&>       m_bs;
}
我想对一个A的指针进行深拷贝,请问有什么好的建议吗

4 个解决方案

#1


自己在类中new的,自己解决深拷贝,添加复制构造和赋值的实现
没有自己new,只是用了别的对象(比如string),那么是别的对象负责深拷贝,你不用管。
在你这个例子中,CArray本身不是指针,那么不用你管深拷贝。
如果你的代码是 CArray<B*,B*&> *m_pbs,那么要对m_pbs这个指针指向的对象进行深拷贝。

#2


你打算怎么进行深拷贝,就在复制构造函数中怎么去实现即可

#3


实现 "类的复制构造函数和类的赋值运算符重载函数"

#4


大尾巴猫说的有点道理

#1


自己在类中new的,自己解决深拷贝,添加复制构造和赋值的实现
没有自己new,只是用了别的对象(比如string),那么是别的对象负责深拷贝,你不用管。
在你这个例子中,CArray本身不是指针,那么不用你管深拷贝。
如果你的代码是 CArray<B*,B*&> *m_pbs,那么要对m_pbs这个指针指向的对象进行深拷贝。

#2


你打算怎么进行深拷贝,就在复制构造函数中怎么去实现即可

#3


实现 "类的复制构造函数和类的赋值运算符重载函数"

#4


大尾巴猫说的有点道理