std::allocation_result
来自cppreference.com
                    
                                        
                    
                    
                                                            
                    |   在标头  <memory> 定义
  | 
||
|   template< class Pointer, class SizeType = std::size_t > struct allocation_result {  | 
(C++23 起) | |
allocation_result 特化由适合的分配器 (Allocator) 类型的 allocate_at_least 成员函数(例如 std::allocator::allocate_at_least )及 std::allocator_traits::allocate_at_least 返回。
allocation_result 的每个特化均无基类或 ptr 与 count 之外的声明成员,从而它适合聚合初始化及结构化绑定。
模板形参
| Pointer | - |   常为 std::allocator_traits<Alloc>::pointer ,其中 Alloc 为分配器 (Allocator) 类型
 | 
| SizeType | - |   常为 std::allocator_traits<Alloc>::size_type ,其中 Alloc 为分配器 (Allocator) 类型
 | 
成员对象
|    ptr (C++23)  | 
   常用于 allocate_at_least 所分配的存储中首元素的地址 (公开成员对象)  | 
|    count (C++23)  | 
   常用于 allocate_at_least 所分配的存储中的实际元素数 (公开成员对象)  | 
注解
Pointer 与 SizeType 默认分别为指向对象类型的指针与 std::make_unsigned_t<std::ptrdiff_t> (几乎总是与 std::size_t 为同一类型)。
| 功能特性测试宏 | 值 | 标准 | 
|---|---|---|
__cpp_lib_allocate_at_least | 
202302L | (C++23) | 
示例
| 本节未完成 原因:暂无示例  | 
参阅
|    (C++23)  | 
   分配与请求的大小至少一样大的未初始化存储  ( std::allocator<T> 的公开成员函数)  | 
|    [静态] (C++23)  | 
   经由分配器分配至少与请求的大小一样大的存储   ( std::allocator_traits<Alloc> 的公开静态成员函数)  |