没有躲过的坑--成对使用new和delete时要采取相同的形式
来源:互联网 发布:无法添加端口监视器 编辑:程序博客网 时间:2024/05/03 07:14
new创建类对象与不new区别:
new创建类对象需要指针接收,一处初始化,多处使用
new创建类对象使用完需delete销毁
new创建对象直接使用堆空间,而局部不用new定义类对象则使用栈空间
new对象指针用途广泛,比如作为函数返回值、函数参数等
而且每个学习C++编程的人都知道成对的使用new和delete,也也就是new申请的内存用delete释放,new []申请的内存由delete []释放。
std::string* first_string = new std::string;std::string* second_string = new std::string[100];delete first_string;delete [] second_string;
这一规则,在实际工作中也应该牢记于心。但是我还是没有躲过这个坑儿。
看看情况吧:
首先使用了typedef进行一些定义;
typedef std::string address_lines[4];std::string *third_string = new address_lines;delete third_string
这个就是遇到的坑儿,被表面所迷惑。
所以在Effectice C++中 item16就讲到了:
最好尽量不要对数组形式做typedef动作。
1 0
- 没有躲过的坑--成对使用new和delete时要采取相同的形式
- 成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同的形式
- Effective C++(16) 成对使用new和delete时要采取相同的形式
- 第16条:成对使用的new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同的形式
- 条款16:成对使用new和delete的时候要采取相同形式
- C++之成对使用的new和delete时采取相同形式(16)---《Effective C++》
- Effective C++——》条款16:成对使用new和delete时要采取相同的形式
- 条款16:成对使用new和delete时要采取相同形式
- Effective c++ 条款16学习笔记: 成对使用new和delete时要采取相同形式
- Effective C++ 学记之16 成对使用new和delete时要采取相同形式
- 《Effective C++》学习笔记条款16 成对使用new和delete时要采取相同形式
- Effective C++ Item 16 成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同形式
- 条款16:成对使用new和delete时要采取相同形式
- Effective C++:条款16:成对使用new和delete时要采取相同形式
- Effective C++读书笔记之十六:成对使用new和delete时要采取相同形式
- linux(centos)搭建SVN服务器
- C++virtual继承
- 第一次blog 发发牢骚
- java
- 基于stm32的遥控小船(一)L298N电机驱动
- 没有躲过的坑--成对使用new和delete时要采取相同的形式
- 利用匿名管道实现远程调用CMD
- 横向listview( HorizontalListView) item平分屏幕的解决方案 可以一屏幕显示n个完整item
- 飞行教程大师之路
- C++ virtual 继承
- nyoj--1185
- 了解集合框架
- 网上一牛人的阿里五面
- TDSAuthenticationManager的用法