第六周 课后实践:项目一——深复制体验(3)
来源:互联网 发布:哪里可以买淘宝账号 编辑:程序博客网 时间:2024/05/18 21:06
问题及代码:
/** Copyright (c) 2015, 烟台大学计算机学院* All rights reserved.* 文件名称:read.cpp* 作 者:陈旭* 完成日期:2015年4月15日* 版 本 号:v1.0** 问题描述:(2)将注释(a)所在的那一行去掉,会出现什么现象?为什么?为什么a数据成员所占用的存储空间要在aa长度基础上加1? 若指针a不是指向字符(即不作为字符串的地址),是否有必要加1?* 输入描述:略* 程序输出:略*/#include<iostream>#include<cstring>using namespace std;class A{private: char *a;public: A(char *aa) { a = new char[strlen(aa)+1]; //(a)这样处理的意义在于:______建立占用空间小的指针数组,节省空间,处理灵活_______ strcpy(a, aa); //(b)数据成员a与形式参数aa的关系:______将aa的值深度复制给a________ } ~A() { delete []a; //(c)这样处理的意义在于: _____删除数组并释放内存_______ } void output() { cout<<a<<endl; } A(A &b) { a=new char[strlen(b.a)+1]; strcpy(a,b.a); }};int main(){ A a("good morning, code monkeys!"); a.output(); A b(a); b.output(); return 0;}
运行结果:
0 0
- 第六周 课后实践:项目一——深复制体验(3)
- 第六周 课后实践:项目一——深复制体验
- 第六周项目一—深复制体验(1)
- 第六周项目一—深复制体验(2)
- 第六周上机实践项目1——深复制体验(3)
- 15第六周项目一——深复制体验
- 第六周 项目一(3):深复制体验
- 第六周项目一深复制体验(3)
- 第六周 项目一-深复制体验(3)
- 第六周 项目一--深复制体验(3)
- 第六周项目一 (3)深复制体验
- 第六周项目一深复制体验(3)
- 第六周项目一 深复制体验(3)
- 第六周项目一 深复制体验(3)
- 第六周项目一—深复制体验
- 第六周上机实践项目1——深复制体验(1)
- 第六周上机实践项目1——深复制体验(2)
- 第六周——项目一深复制体验(一)
- 第六周项目四 友元函数 求两点距离
- 大一第二学期第6周【程序阅读(5)】
- linux mysql 批量保存
- YUV视频格式到RGB32格式转换的速度优化 上篇
- 第六周项目一 深复制体验1
- 第六周 课后实践:项目一——深复制体验(3)
- 第六周项目四 成员函数、友元函数和一般函数有区别
- NetBeans IDE 8.0.1 更新信息列表
- 第六周 项目5-友元类
- 了解JSP中request属性的用法
- 第6周项目1-我的数组类
- 第6周项目4——成员函数、友元函数和一般函数有区别
- 解决乱码!MyEclipse设置统一编码为UTF-8
- bzoj 2006: [NOI2010]超级钢琴