首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::allocator_traits

Defined in header <memory>

template< class Alloc > struct allocator_traits;

(since C++11)

allocator_traits类模板提供了标准的方法来访问Allocator斯标准容器和其他标准库组件通过此模板访问分配器,这使得可以使用任何类类型作为分配器,只要用户提供的专门化allocator_traits实现所有必需的功能。

默认的,非专门化的,allocator_traits包含下列成员:

成员类型

Type

Definition

allocator_type

Alloc

value_type

Alloc::value_type

pointer

Alloc::pointer if present, otherwise value_type*

const_pointer

Alloc::const_pointer if present, otherwise std::pointer_traits<pointer>::rebind<const value_type>

void_pointer

Alloc::void_pointer if present, otherwise std::pointer_traits<pointer>::rebind<void>

const_void_pointer

Alloc::const_void_pointer if present, otherwise std::pointer_traits<pointer>::rebind<const void>

difference_type

Alloc::difference_type if present, otherwise std::pointer_traits<pointer>::difference_type

size_type

Alloc::size_type if present, otherwise std::make_unsigned<difference_type>::type

propagate_on_container_copy_assignment

Alloc::propagate_on_container_copy_assignment if present, otherwise std::false_type

propagate_on_container_move_assignment

Alloc::propagate_on_container_move_assignment if present, otherwise std::false_type

propagate_on_container_swap

Alloc::propagate_on_container_swap if present, otherwise std::false_type

is_always_equal(since C++17)

Alloc::is_always_equal if present, otherwise std::is_empty<Alloc>::type

成员别名模板

Type

Definition

rebind_alloc<T>

Alloc::rebind<T>::other if present, otherwise Alloc<T, Args> if this Alloc is Alloc<U, Args>

rebind_traits<T>

std::allocator_traits<rebind_alloc<T>>

成员函数

allocate static

allocates uninitialized storage using the allocator (public static member function)

deallocate static

deallocates storage using the allocator (public static member function)

construct static

constructs an object in the allocated storage (function template)

destroy static

destructs an object stored in the allocated storage (function template)

max_size static

returns the maximum object size supported by the allocator (public static member function)

select_on_container_copy_construction static

obtains the allocator to use after copying a standard container (public static member function)

另见

allocator

the default allocator (class template)

scoped_allocator_adaptor (C++11)

implements multi-level allocator for multi-level containers (class template)

pointer_traits (C++11)

provides information about pointer-like types (class template)

代码语言:txt
复制
 © cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券