|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
内存分配器的实现 更多...
类 | |
| class | standard_allocator< T > |
| 标准分配器类 更多... | |
类型定义 | |
| template<typename T> | |
| using | allocator = standard_allocator<T> |
| 标准分配器别名 | |
函数 | |
| template<size_t Align> | |
| NEFORCE_ALLOC_OPTIMIZE NEFORCE_CONSTEXPR20 void * | allocate (const inner::alloc_size_t bytes) |
| 内存分配函数 | |
| template<size_t Align> | |
| NEFORCE_CONSTEXPR20 void | deallocate (void *ptr, inner::alloc_size_t bytes) noexcept |
| 内存释放函数 | |
| template<typename T, typename U> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator== (const standard_allocator< T > &, const standard_allocator< U > &) noexcept |
| 比较两个分配器是否相等 | |
| template<typename T, typename U> | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 bool | operator!= (const standard_allocator< T > &, const standard_allocator< U > &) noexcept |
| 比较两个分配器是否不等 | |
内存分配器的实现
| using allocator = standard_allocator<T> |
| NEFORCE_ALLOC_OPTIMIZE NEFORCE_CONSTEXPR20 void * allocate | ( | const inner::alloc_size_t | bytes | ) |
内存分配函数
| Align | 对齐要求 |
| bytes | 要分配的字节数 |
内存分配的统一入口。
在文件 standard_allocator.hpp 第 202 行定义.
被这些函数引用 standard_allocator< U >::allocate().
|
noexcept |
内存释放函数
| Align | 对齐要求 |
| ptr | 要释放的内存指针 |
| bytes | 要释放的字节数 |
内存释放的统一入口。
在文件 standard_allocator.hpp 第 306 行定义.
被这些函数引用 vector< byte_t >::assign(), standard_allocator< U >::deallocate(), vector< byte_t >::emplace(), vector< byte_t >::insert(), vector< byte_t >::operator=(), vector< byte_t >::reserve(), vector< byte_t >::shrink_to_fit() , 以及 vector< byte_t >::~vector().
|
noexcept |
|
noexcept |