【C++】第12章 类和动态内存分配 知识点总结
来源:互联网 发布:微信群提取好友软件 编辑:程序博客网 时间:2024/06/06 17:44
《C++ Primer Plus》第12章知识点总结
在构造函数中使用new时应注意的事项
(1)如果在构造函数中使用new来初始化指针成员,则应在析构函数中使用delete
(2)new和delete必须互相兼容。new对应于delete,new[]对应于delete[]
(3)如果有多个构造函数,则必须以相同的方式使用new,要么都带中括号,要么都不带
(4)应定义一个复制构造函数,通过深度复制将一个对象初始化为另一个对象。通常,这种构造函数与下面类似
String::String(const String& st) { num_strings++; len=st.len; str=new char [len+1]; std::strcpy(str,st.str); }具体地说,复制构造函数应分配足够的空间来存储复制的数据,并复制数据。而不仅仅是数据的地址。另外,还应该更新所有受影响的静态类成员。
(5)还应当定义一个赋值运算符,通过深度复制将一个对象复制给另一个对象,通常,该类方法与下面类似
String& String::operator=(const String& st) { if(this==&st) return *this; delete[] str; len=st.len; str=new char [len+1]; std::strcpy(str,st.str); return *this; }具体地说,该方法应完成这些操作:检查自身赋值情况,释放成员指针以前指向的内存,复制数据而不仅仅是数据的地址,并返回一个指向调用对象的引用。
阅读全文
0 0
- 【C++】第12章 类和动态内存分配 知识点总结
- C++ Primer Plus 第12章 类和动态内存分配
- 第12章 类和动态内存分配
- 第12章类和动态内存分配
- C和指针之动态内存分配常见问题和总结
- C++ primer plus 第12章 类和动态内存分配
- C++学习笔记(第12章->类和动态内存分配)
- 【读书笔记:C++ primer plus 第六版 中文版】第12章 类和动态内存分配
- 第12章 类和动态内存分配(待补充)
- C++ primer plus 第12章 类和动态内存分配
- C和指针读书笔记-第11章(动态内存分配)
- 【C++】第10章 对象和类 知识点总结
- 【C】【笔记】《C和指针》第10章 结构和联合 第11章 动态内存分配 第12章 使用结构和指针 第13章 高级指针话题 第14章预处理器
- 【C++】第9章 内存模型和名称空间 知识点总结
- 第十二章 类和动态内存分配
- 第十二章 类和动态内存分配
- 第十二章 类和动态内存分配
- 第十二章:类和动态内存分配
- Hibernate入门(二)之相关API
- “自顶向下,逐步求精”---编程思想方法介绍
- 7 个最佳的 Java 框架
- ReactiveCocoa基础
- PAT 1014. 福尔摩斯的约会 (20)
- 【C++】第12章 类和动态内存分配 知识点总结
- JS基础-定时器+运动
- jQuery学习之七---CSS
- Perceptual Losses for Real-Time Style Transfer and Super-Resolution论文翻译理解
- Linux-DNS的基本设定与ddns花生壳
- springboot+scala+slick+react实现微服务
- 自定义类型(结构体,位段,枚举,联合)总结
- 用暴力求解法和分而治之法求解最大子数组问题的Java代码实现
- ReactiveCocoa进阶