A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://en.cppreference.com/w/cpp/language/../memory/allocator_traits.html below:

std::allocator_traits - cppreference.com

template< class Alloc >
struct allocator_traits;

(since C++11)

The allocator_traits class template provides the standardized way to access various properties of Allocators. The standard containers and other standard library components access allocators through this template.

It is possible to use any class type as an allocator, as long as the user-provided specialization of std::allocator_traits implements all required functionality.

(until C++23)

A program that declares an explicit or partial specialization of std::allocator_traits is ill-formed, no diagnostic required.

(since C++23)

The default, non-specialized, std::allocator_traits contains the following members:

[edit] Member types 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 Alloc::is_always_equal if present, otherwise std::is_empty<Alloc>::type [edit] Member alias templates Type Definition rebind_alloc<T> Alloc::rebind<T>::other if present, otherwise SomeAllocator<T, Args> if this Alloc is of the form SomeAllocator<U, Args>, where Args is zero or more type arguments rebind_traits<T> std::allocator_traits<rebind_alloc<T>> [edit] Member functions allocates uninitialized storage using the allocator
(public static member function) [edit] allocates storage at least as large as the requested size via an allocator
(public static member function) [edit] deallocates storage using the allocator
(public static member function) [edit] constructs an object in the allocated storage
(function template) [edit] destructs an object stored in the allocated storage
(function template) [edit] returns the maximum object size supported by the allocator
(public static member function) [edit] obtains the allocator to use after copying a standard container
(public static member function) [edit] [edit] Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior LWG 2108 C++11 there was no way to show an allocator is stateless is_always_equal provided [edit] See also

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4