关于深浅拷贝的问题

ljinlun 2004-01-05 10:14:24
有个小问题已经困扰我几天了,希望大家帮我解决一下。
定义一个带有指针成员的类,比如说是char型指针,这时简单的赋值就会出现问题,也就是我们说的深浅拷贝问题。如果一个类中存在char指针,很容易解决。分配新空间,然后利用strcpy函数就能解决这个问题。但是,如果这个指针不是char型的,比如说是一个自定义类型的指针,这个时候要解决深浅拷贝问题应该怎么做?下面是我定义的类及其拷贝函数:
class test
{
int i;
test* t1;
test* t2;
public:
test();
test(test& r)
{
i=r.i;
t1=r.t1;
t2=r.t2;
}
test& operator = (const test& r)
{
i=r.i;
t1=r.t1;
t2=r.t2;
return *this;
}
};

这样定义可以么?如果不行我该怎么做啊?
...全文
29 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

64,649

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧