文章目录
- 序言
- 12.1 动态内存和智能指针
- shared_ptr类
- make_shared函数
- shared_ptr的拷贝和赋值
- shared_ptr 自动销毁所管理的对象
- shared_ptr 还会自动释放相关联的内存
- 定义 StrBlob类
- 直接管理内存
- 指针值和delete
- 动态对象的生存期在知道被释放时为止
- shared_ptr和new结合使用
- 不要混合使用普通指针和智能指针
- 智能指针和异常
- 智能指针和哑类
- unique_ptr
- 使用unique_ptr参数和返回unique_ptr
- 向unique_pte传递删除器
- weak_ptr
- 核查指针类
- 指针操作
- 动态数组
- new 和数组
- 分配一个数组会得到一个元素类型的指针
- 初始化动态分配对象的数组
- 动态分配一个空数组时合法的
- 释放动态数组
- 智能指针和动态数组
- allocator 类
- allocator 分配未构造的内存
- 拷贝和填充未初始化内存的算法
- 使用标准库:文本查询程序
- 文本程序设计
- 数据结构
- 在类之间共享数据
- 使用TextQuery类
- 查询程序类的定义
- TextQuery构造函数
- QueryResult类
- 打印结果
- 小结
- 术语图
序言
12.1 动态内存和智能指针
shared_ptr类
make_shared函数
//p6指向一个动态分配的空 vector<string>
auto p6=make_shared<vector<string>>();
shared_ptr的拷贝和赋值
shared_ptr 自动销毁所管理的对象
shared_ptr 还会自动释放相关联的内存
定义 StrBlob类
直接管理内存
*
指针值和delete
动态对象的生存期在知道被释放时为止
shared_ptr和new结合使用
不要混合使用普通指针和智能指针
智能指针和异常
智能指针和哑类
unique_ptr
使用unique_ptr参数和返回unique_ptr
向unique_pte传递删除器
weak_ptr
核查指针类
指针操作
动态数组
new 和数组
分配一个数组会得到一个元素类型的指针
初始化动态分配对象的数组
动态分配一个空数组时合法的
释放动态数组
智能指针和动态数组
allocator 类
allocator 分配未构造的内存
拷贝和填充未初始化内存的算法
使用标准库:文本查询程序
文本程序设计
数据结构
在类之间共享数据
使用TextQuery类
查询程序类的定义
TextQuery构造函数
QueryResult类