std:: allocator_arg, std:: allocator_arg_t
From cppreference.net
C++
Memory management library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definiert im Header
<memory>
|
||
|
struct
allocator_arg_t
{
explicit
allocator_arg_t
(
)
=
default
;
}
;
|
(1) | (seit C++11) |
|
constexpr
std::
allocator_arg_t
allocator_arg
{
}
;
|
(2) |
(seit C++11)
(inline seit C++17) |
1)
std::allocator_arg_t
ist ein leerer Klassentyp, der verwendet wird, um die Überladungen von Konstruktoren und Memberfunktionen von Allokator-bewussten Objekten zu unterscheiden, einschließlich
std::tuple
,
std::function
,
std::packaged_task
,
(bis C++17)
und
std::promise
.
2)
std::allocator_arg
ist eine Instanz von
(
1
)
, die an die Konstruktoren und Memberfunktionen solcher zulässiger Typen übergeben werden kann.
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 2510 | C++11 | der Standardkonstruktor war nicht-explicit, was zu Mehrdeutigkeit führen konnte | als explicit deklariert |
Siehe auch
|
(C++11)
|
prüft, ob der angegebene Typ Uses-Allocator-Konstruktion unterstützt
(Klassentemplate) |