第六周项目1(1)-深复制体验
来源:互联网 发布:英语作文批改软件 编辑:程序博客网 时间:2024/06/05 07:21
/* *Copyright (c) 2014, 烟台大学计算机学院 *All rights reserved. *文件名称:week6-1-1.cpp *作者:高赞 *完成日期:2015年 4 月 13 日 *版本号:v1.0 * * */#include<iostream>#include<cstring>using namespace std;class A{private: char *a;public: A(char *aa) { a = new char[strlen(aa)+1]; //(a)这样处理的意义在于:__多加一个用来存放'\0'_结束 strcpy(a, aa); //(b)数据成员a与形式参数aa的关系:aa复制给a } ~A() { delete []a; //(c)这样处理的意义在于: 节省空间 } void output() { cout<<a<<endl; }};int main(){ A a("good morning, code monkeys!"); a.output(); A b("good afternoon, codes!"); b.output(); return 0;}
若将(a)行去掉,因为存的是字符串,由于没有多余的空间来存放'\0',字符串不被认为结束,程序运行会出现错误。
而且a也成为了野指针,存在安全隐患。
0 0
- 第六周 【项目1-深复制体验】
- 第六周 项目1 深复制体验
- 第六周项目1 深复制体验
- 第六周项目1:深复制体验
- 第六周项目1-深复制体验
- 第六周项目1深复制体验
- 第六周项目1-深复制体验
- 第六周 项目1-深复制体验(1)
- 第六周 项目1-深复制体验(1)
- 第六周 【项目1-深复制体验】(1)
- 第六周项目1(1)-深复制体验
- 第六周【项目1-深复制体验】1
- 第六周项目一(1):深复制体验
- 第六周 项目一(1):深复制体验
- 第六周 项目一-深复制体验(1)
- 第六周 项目一--深复制体验(1)
- 第六周 【项目1-深复制体验】(2)
- 第六周 【项目1-深复制体验】(3)
- 16-Bug解决之道
- [LeetCode]Rising Temperature,解题报告
- IOS CGAffineTransform视图平移,放缩,旋转
- hdu 4284 floyed+状态压缩dp
- Python 学习笔记之读写模式
- 第六周项目1(1)-深复制体验
- 欢迎使用CSDN-markdown编辑器
- Cast from pointer to smaller type 'int' loses
- android分包
- protobuf搭建环境,序列化示例
- C语言之结构体
- 类型/结构定义
- 灵活、易用、强大的TS切片和M3U8构建工具
- 使用Vitamio打造自己的Android万能播放器(12)—— 播放网络视频缓冲处理