您的当前位置:首页正文

深拷贝与浅拷贝

来源:一二三四网
数据结构与算法实验报告

姓名 冯洪松 学号 实验项目 200800820136 日期 指导教师 2010-12-3 赵晓辉 深拷贝与浅拷贝 一、上机实验的问题和要求(需求分析): 1、掌握深拷贝与浅拷贝的定义 2、理解合适需要深拷贝 3、掌握深拷贝拷贝构造函数的定义 二、程序设计的基本思想,原理和算法描述: 创建一个对象时,分配了资源,对其拷贝,需要定义自己的拷贝构造函数,使之不但拷贝成员,也拷贝资源。 三、调试和运行程序过程中产生的问题及采取的措施: 编写一个拷贝构造函数时,为开辟一块新的空间。 改正:编写时,用new开辟新相应值的空间。 四、源程序及注释: #include using namespace std; class SimpleCircle { public: SimpleCircle(int m) { itsRadius=new int(m);} SimpleCircle(SimpleCircle &p) { itsRadius=new int(*p.itsRadius);} ~SimpleCircle() {cout<<\"destruct the circle\"<>aRadius; SimpleCircle aCircle(aRadius); SimpleCircle newCircle(aCircle); aCircle.getRadius(); newCircle.getRadius(); } 五、运行输出结果及分析: 此次程序设计的收获: 通过程序使我加深了对深拷贝与浅拷贝的理解,也对一些细节问题,得到了纠正。

因篇幅问题不能全部显示,请点此查看更多更全内容