# std::allocation_result

< cpp‎ | memory

定义于头文件 `<memory>` |  |
template< class Pointer > struct allocation_result { Pointer ptr; std::size_t count; }; |  | (C++23 起)

`allocation_result` 特化是适合的分配器 (Allocator) 类型的 `allocate_at_least` 成员函数（例如 `std::allocator::allocate_at_least` ）及 `std::allocate_at_least` 的返回类型。

`allocation_result` 的每个特化均无基类或 `ptr` 与 `count` 之外的声明成员，从而它适合聚合初始化及结构化绑定。

### 模板形参

Pointer | - | 常为 std::allocator_traits<Alloc>::pointer ，其中 `Alloc` 为分配器 (Allocator) 类型

### 成员对象

ptr (C++23) | 常用于 `allocate_at_least` 所分配的存储中首元素的地址 (公开成员对象)
count (C++23) | 常用于 `allocate_at_least` 所分配的存储中的实际元素数 (公开成员对象)

### 示例

| 本节未完成 原因：暂无示例

### 参阅

allocate_at_least (C++23) | 分配与请求的大小至少一样大的未初始化存储 (`std::allocator<T>` 的公开成员函数)
allocate_at_least (C++23) | 经由分配器分配至少与请求的大小一样大的存储 (函数模板)