c++实践参考:深复制
来源:互联网 发布:摩托车违章查询软件 编辑:程序博客网 时间:2024/05/16 13:02
/* *Copyright(c)2016,烟台大学计算机学院 *All right reserved. *文件名称:test.cpp *作者:黄金婵 *完成日期:2016年6月9日 *版本号:v1.0 * *问题描述:为类A增加复制构造函数,用下面的main函数测试 *输入描述: *程序输出: */#include<iostream>#include<cstring>using namespace std;class A{private: char *a;public: A(char *aa) { a = new char[strlen(aa)+1]; strcpy(a,aa); } A(A &b) { a = new char[strlen(b.a)+1]; strcpy(a,b.a); } ~A() { delete []a; } void output() { cout<<a<<endl; }};int main(){ A a("good morning, code monkeys!"); a.output(); A b(a); b.output(); return 0;}
知识点总结:
浅复制总是存在很多诟病,为了解决一切诟病造成的运行错误,我们可以编写复制构造函数,即深复制。深复制可以分别释放两个类中的内存空间从而不在引起运行错误。
0 0
- c++实践参考:深复制
- 《C语言及程序设计》实践参考——字符串复制
- C++实践参考——深复制体验
- C++实践参考——深复制体验 3
- 《C语言及程序设计》实践参考——输出点阵图
- 《C语言及程序设计》实践参考——电阻并联
- 《C语言及程序设计》实践参考——正差值
- 《C语言及程序设计》实践参考——发工资
- 《C语言及程序设计》实践参考——玩数字
- 《C语言及程序设计》实践参考——坐标转换
- 《C语言及程序设计》实践参考——构造菜单
- 《C语言及程序设计》实践参考——投票表决器
- 《C语言及程序设计》实践参考——成绩等级
- 《C语言及程序设计》实践参考——求阶乘
- 《C语言及程序设计》实践参考——另类求和
- 《C语言及程序设计》实践参考——Bessel函数
- 《C语言及程序设计》实践参考——转着圈加密
- 《C语言及程序设计》实践参考——血型统计
- 开关问题
- 第十一周训练,职院薪水
- 类和指针程序阅读(3)
- 第十三周上机实践项目 项目2--动物这样叫(1)
- 尿酸高但还没发作痛风,用吃药吗?
- c++实践参考:深复制
- 9.2我的数组类
- 第十一周练习,日期时间
- 不可变序列算法示例
- JAVA反色计算方法的改进和修正
- 第13周实践项目4立体类族共有的抽象类
- 第十五周--程序填空
- GDB 调试 Nginx 磨刀不误砍柴工
- 13周 项目二--动物这样叫(1)