动态内存管理

来自cppreference.com
< cpp
 
 
 
 

目录

[编辑] 智能指针

智能指针使得自动、异常安全的对象生存期管理可行。

定义于头文件 <memory>
指针类别
拥有独有对象所有权语义的智能指针
(类模板) [编辑]
拥有共享对象所有权语义的智能指针
(类模板) [编辑]
(C++11)
std::shared_ptr所管理的对象的弱引用
(类模板) [编辑]
(C++17 中移除)
拥有严格对象所有权语义的智能指针
(类模板) [编辑]
帮助类
提供基于占有者的,混合类型的共享指针和弱指针排序
(类模板) [编辑]
允许一个对象来创建一个指代本身的shared_ptr
(类模板) [编辑]
访问指向已销毁对象的weak_ptr时抛出的异常
(类) [编辑]
unique_ptr默认的删除器
(类模板) [编辑]

[编辑] 分配器

分配器是封装内存分配策略的类模板。这允许泛型容器从数据自身将内存管理解耦合。

定义于头文件 <memory>
默认的分配器
(类模板) [编辑]
提供关于分配器类型的信息
(类模板) [编辑]
标签类型,用于选择分配器感知的构造函数重载
(类) [编辑]
用于选择具分配器的构造函数的 std::allocator_arg_t 对象
(常量) [编辑]
检查指定的类型是否支持使用分配器的构造
(类模板) [编辑]
定义于头文件 <scoped_allocator>
为多级容器实现的多级分配器
(类模板) [编辑]
定义于头文件 <memory_resource>
定义于命名空间 pmr
std::memory_resource 构造,支持基于它的运行时多态的分配器
(类模板) [编辑]

[编辑] 内存资源

内存资源实现可为 std::pmr::polymorphic_allocator 所用的内存分配策略

定义于头文件 <memory_resource>
定义于命名空间 pmr
封装内存资源的类的抽象接口
(类) [编辑]
返回静态的程序范围 std::pmr::memory_resource ,它使用全局 operator newoperator delete 分配和解分配内存
(函数) [编辑]
返回不进行分配的静态 std::pmr::memory_resource
(函数) [编辑]
获取默认 std::pmr::memory_resource
(函数) [编辑]
设置默认的 std::pmr::memory_resource
(函数) [编辑]
池资源的构造函数选项集合
(类) [编辑]
线程安全的 std::pmr::memory_resource ,用于管理不同块大小的池中的分配
(类) [编辑]
线程不安全的 std::pmr::memory_resource ,用于管理不同块大小的池中的分配
(类) [编辑]
仅在销毁资源时释放所分配内存的特殊目的 std::pmr::memory_resource
(类) [编辑]

[编辑] 未初始化存储

提供数个工具以创建并访问未初始化存储

定义于头文件 <memory>
将范围内的对象复制到未初始化的内存区域
(函数模板) [编辑]
将指定数量的对象复制到未初始化的内存区域
(函数模板) [编辑]
复制一个对象到以范围定义的未初始化内存区域
(函数模板) [编辑]
复制一个对象到以起点和计数定义的未初始化内存区域
(函数模板) [编辑]
移动一个范围的对象到未初始化的内存区域
(函数模板) [编辑]
移动一定数量对象到未初始化内存区域
(函数模板) [编辑]
在范围所定义的未初始化的内存区域以默认初始化构造对象
(函数模板) [编辑]
在起始和计数所定义的未初始化内存区域用默认初始化构造对象
(函数模板) [编辑]
在范围所定义的未初始化内存中用值初始化构造对象
(函数模板) [编辑]
在起始和计数所定义的未初始化内存区域以值初始化构造对象
(函数模板) [编辑]
销毁在给定地址的对象
(函数模板) [编辑]
(C++17)
销毁一个范围中的对象
(函数模板) [编辑]
(C++17)
销毁范围中一定数量的对象
(函数模板) [编辑]
(C++17 中弃用)
(C++20 中移除)
允许标准算法存储结果于未初始化内存的迭代器
(类模板) [编辑]
(C++17 中弃用)
(C++20 中移除)
获得未初始化存储
(函数模板) [编辑]
(C++17 中弃用)
(C++20 中移除)
释放未初始化存储
(函数模板) [编辑]

[编辑] 垃圾收集器支持

定义于头文件 <memory>
声明一个对象不能被回收
(函数) [编辑]
声明一个对象可以被回收
(函数模板) [编辑]
声明该内存区域不含可追踪指针
(函数) [编辑]
取消 std::declare_no_pointers 的效果
(函数) [编辑]
列出指针安全模式
(枚举) [编辑]
返回当前的指针安全模式
(函数) [编辑]

[编辑] 杂项

定义于头文件 <memory>
提供关于类指针类型的信息
(类模板) [编辑]
从仿指针类型获得裸指针
(函数模板) [编辑]
(C++11)
获得对象的实际地址,即使重载了 & 运算符
(函数模板) [编辑]
(C++11)
对齐缓冲区中的指针
(函数) [编辑]

[编辑] C 风格内存管理

包含例如 std::mallocstd::free

[编辑] 低层内存管理

包含例如 operator newoperator deletestd::set_new_handler