C++ Primer学习总结 第12章 动态内存

第12章 动态内存


1.    申请并使用shared_ptr.  P400

 

2.    shared_ptr计数. P402

赋值, 拷贝, 向函数传递一个智能指针, 或函数返回一个智能指针都会增加当前智能指针的计数.

 

3.    不同对象间利用智能指针共享数据的例子.

 

4.    使用new来动态申请内存. P407

默认情况下,new申请的内存对象都是默认初始化的.

 

5.    new申请的const对象必须初始化. P408

如果申请内置类型, 那么必须用括号()初始化. 如果申请类类型, 如果该类对象有默认构造函数, 可以默认初始化. 但是如果该类对象没有默认构造函数, 那么必须用其他构造函数初始化.

 

6.    使用delete.  P409

delete只能删除指针且该指针指向的必须是用过new申请的内存空间.

 

7.    shared_ptr和new结合使用. P412

 

8.    不要混用智能指针和内置指针.P 413

 

9.    unique_ptr对象初始化.   P417

由于unique_ptr”拥有”它的对象, 所以它不能拷贝和赋值, 且只能用内置指针通过括号()初始化它.

但是我们可以拷贝或赋值一个即将被消耗的unique_ptr. 如下面函数所示:

 

10.  unique_ptr对象的reset()函数和release()函数用法.  P418

 

11.  unique_ptr传递自己的删除器:  P419

shared_ptr传递自己的删除器也类似于unique_ptr.

 

12.  weak_ptr 使用例子 P420.

 

13.  new分配动态数组.  P424

无论方式1还是方式2,得到的都是数组元素类型的指针而不是得到一个数组类型,所以如果对其用begin或end都是错的

 

14.  使用智能指针管理动态数组. P425

推荐使用unique_ptr来管理数组.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值