|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
内存追踪分配器 更多...
#include <trace_memory.hpp>
类 | |
| struct | rebind |
| 分配器绑定模板 更多... | |
Public 成员函数 | |
| trace_allocator ()=default | |
| 默认构造函数 | |
| trace_allocator (const trace_allocator &other) | |
| 拷贝构造函数 | |
| trace_allocator & | operator= (const trace_allocator &other) |
| 拷贝赋值运算符 | |
| ~trace_allocator () | |
| 析构函数 | |
| void | print_stacktrace () const |
| 打印所有未释放内存的调用栈 | |
| NEFORCE_NODISCARD NEFORCE_ALLOC_OPTIMIZE pointer | allocate (const size_type n) |
| 分配内存 | |
| NEFORCE_NODISCARD NEFORCE_ALLOC_OPTIMIZE pointer | allocate () |
| 分配单个元素的内存 | |
| void | deallocate (pointer p, const size_type n) noexcept |
| 释放内存 | |
| void | deallocate (pointer p) noexcept |
| 释放单个元素的内存 | |
内存追踪分配器
| T | 分配的元素类型 |
提供内存分配追踪功能的分配器适配器。 在分配内存时记录调用栈,在释放内存时清除记录。 析构时检查是否有未释放的内存,并输出详细的泄漏信息。
在文件 trace_memory.hpp 第 34 行定义.
|
inline |
|
inline |
|
inline |
分配单个元素的内存
分配一个T类型元素的内存,并记录当前调用栈。
在文件 trace_memory.hpp 第 134 行定义.
被这些函数引用 trace_allocator< U >::allocate().
|
inline |
|
inlinenoexcept |
释放单个元素的内存
| p | 要释放的内存指针 |
释放由allocate()分配的单个元素内存。
在文件 trace_memory.hpp 第 157 行定义.
被这些函数引用 trace_allocator< U >::deallocate().
|
inlinenoexcept |
|
inline |
|
inline |