条款16:成对使用new和delete时要采取相同形式
来源:互联网 发布:数据透视表实例下载 编辑:程序博客网 时间:2024/06/07 16:04
// 条款16: 成对使用new和delete时要采用相同的形式// 1.如果在new表达式中使用[],必须在相应的delete表达式中使用[]。如果// 在new表达式中不使用[],一定不要再相应的delete表达式中使用[]。// 2.new一个对象会有两个行为,第一个是内存被分配出来,第二是针对此内存会有一个// 或多个构造函数被调用。// 3.delete一个对象也会有两个行为,第一个是针对此内存会有一个或多个析构函数被调用,// 第二个是内存被释放。#include <iostream>#include <string>class MyString16 {public:MyString16() {count_++;std::cout << "construct" << count_ << std::endl;}~MyString16() {std::cout << "destruct" << count_ << std::endl;count_--;}public:static int count_;};int MyString16::count_ = 0;int main() {MyString16* ptr1 = new MyString16;MyString16* ptr2 = new MyString16[10];delete ptr1; // 删除一个对象delete [] ptr2; // 删除一个对象数组// 错误用法,未知结果,导致系统崩溃MyString16* ptr3 = new MyString16;MyString16* ptr4 = new MyString16[10];delete ptr4;delete [] ptr3;return 0;}
阅读全文
0 0
- 条款16:成对使用new和delete时要采取相同形式
- Effective c++ 条款16学习笔记: 成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同的形式
- 《Effective C++》学习笔记条款16 成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同形式
- Effective C++:条款16:成对使用new和delete时要采取相同形式
- Effective C++ 读书笔记 条款16:成对使用new和delete时要采取相同形式
- 条款16 成对使用new和delete时要采取相同形式
- Effective C++条款16解读:成对使用new和delete时要采取相同形式
- Effective C++条款16:成对使用new和delete时要采取相同形式
- 条款16 成对使用new和delete时要采取相同形式
- 《Effect C++》学习------条款16:成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同的形式
- 读书笔记《Effective C++》条款16:成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete的时候要采取相同形式
- 成对使用new和delete时要采取相同形式
- effective java(21) 之用函数对象表示策略
- Matlab GUI,显示图片,打开文件对话框,单选按钮组
- 要么为继承而设计,并提供文档说明,要么就禁止继承。
- 安卓开发之---TextView
- assert的用法
- 条款16:成对使用new和delete时要采取相同形式
- 菜鸟遇到的一个问题的解决方案
- Caused by: java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory
- 项目管理利器(Maven)——Pom.xml解析
- Scala--隐式转换
- 使用for循环打印9×9乘法表
- zimpha的bc出题录(当然是部分啦)
- 条款17:以独立语句将newed对象置入智能指针
- 重学数据结构 链表增删