第六周项目一 深复制体验(3)
来源:互联网 发布:java 异常 编辑:程序博客网 时间:2024/06/09 15:47
问题及代码
ALL rights reserved.
*文件名称: 初学对象6
作者:李长鸿
*完成时间:2015.4.15
*问题描述: 阅读程序
*/
#include<iostream>#include<cstring>using namespace std;class A{private: char *a;public: A(A &x) { a = new char[strlen(x.a)+1]; strcpy(a,x.a); } A(char *aa) { a = new char[strlen(aa)+1];//(a)这样处理的意义在于:给数组a分配了一段空间,使它名花有主,不做孤魂野鬼找不到家; strcpy(a, aa); //(b)数据成员a与形式参数aa的关系:a赋值为aa,相等关系; } ~A() { delete []a; //(c)这样处理的意义在于: 及时撤销空间,早投胎,不浪费; } void output() { cout<<a<<endl; }};int main(){ A a("good morning, code monkeys!"); a.output(); A b(a); b.output(); return 0;}
总结:对于指针对象成员,一定要给它分配空间后才能将另一个指针赋给它,否则它就成了野指针了。就好像一个居无定所的男人,没有父母敢把自己的女儿嫁给他——他没有家,应该在哪儿把女儿嫁给他呢??以后又要去哪儿找女儿呢???
0 0
- 第六周 项目一(3):深复制体验
- 第六周项目一深复制体验(3)
- 第六周 项目一-深复制体验(3)
- 第六周 项目一--深复制体验(3)
- 第六周项目一 (3)深复制体验
- 第六周项目一深复制体验(3)
- 第六周项目一 深复制体验(3)
- 第六周项目一 深复制体验(3)
- 第六周项目一:-深复制体验
- 第六周项目一深复制体验
- 第六周项目一--深复制体验
- 第六周项目一--深复制体验
- 第六周 项目一-深复制体验
- 第六周项目一深复制体验
- 第六周项目一 深复制体验
- 第六周 项目一 深复制体验
- 第六周 项目一 深复制体验
- 第六周项目一深复制体验
- struts2中一个action中实现多个功能
- 第6周项目3-成员函数、友元函数和一般函数的区别(成员函数)
- shell获得当前脚本所在目录
- oracle 中start with 的用法
- 视觉SLAM漫谈(二):图优化理论与g2o的使用
- 第六周项目一 深复制体验(3)
- 系统分析师-安全性知识
- CMD APK签名
- 第六周阅读程序4:对象的复制
- 设置ViewPagerIndicator框架中IconPageIndicator的图片指示器间距
- sock_init
- OJ--C++类实现最大数的输出
- 学习使用:before和:after伪元素
- 在MyEclipse中如何创建Maven项目