std::experimental::promise<R>:: promise (library fundamentals TS)
From cppreference.net
<
cpp
|
experimental
|
lib extensions
|
promise
|
promise
(
)
;
|
(1) | (Bibliothek Fundamentals TS) |
|
template
<
class
Alloc
>
promise ( std:: allocator_arg_t , const Alloc & alloc ) ; |
(2) | (Bibliothek Fundamentals TS) |
|
promise
(
promise
&&
other
)
noexcept
;
|
(3) | (Bibliothek Fundamentals TS) |
|
promise
(
const
promise
&
other
)
=
delete
;
|
(4) | (Bibliothek Fundamentals TS) |
Konstruiert ein
std::experimental::promise
Objekt.
1)
Standardkonstruktor. Konstruiert das Promise mit einem leeren gemeinsamen Zustand.
2)
Konstruiert das Promise mit einem leeren gemeinsamen Zustand. Der gemeinsame Zustand wird mit
alloc
alloziert, das als ein typgelöschter Allokator behandelt wird (siehe unten).
3)
Move-Konstruktor. Konstruiert das Promise mit dem gemeinsamen Zustand von
other
unter Verwendung von Move-Semantik. Nach der Konstruktion hat
other
keinen gemeinsamen Zustand mehr.
4)
std::experimental::promise
ist nicht kopierbar.
Typgelöschter Allokator
Die Konstruktoren von
promise
, die ein Allokator-Argument
alloc
entgegennehmen, behandeln dieses Argument als einen typgelöschten Allokator. Der vom
promise
zur Speicherallokation verwendete Zeiger auf die Speicherressource wird unter Verwendung des Allokator-Arguments (falls angegeben) wie folgt bestimmt:
Typ von
alloc
|
Wert des Memory-Resource-Zeigers |
| Nicht vorhanden (kein Allokator bei Konstruktion angegeben) | Der Wert von std:: experimental :: pmr :: get_default_resource ( ) zum Zeitpunkt der Konstruktion. |
| std::nullptr_t | Der Wert von std:: experimental :: pmr :: get_default_resource ( ) zum Zeitpunkt der Konstruktion. |
|
Ein Zeigertyp konvertierbar zu
std:: experimental :: pmr :: memory_resource * |
static_cast < std:: experimental :: pmr :: memory_resource * > ( alloc ) |
|
Eine Spezialisierung von
std::experimental::pmr::polymorphic_allocator |
alloc. resource ( ) |
| Jeder andere Typ, der die Allocator Anforderungen erfüllt |
Ein Zeiger auf einen Wert vom Typ
std::
experimental
::
pmr
::
resource_adaptor
<
A
>
(
alloc
)
, wobei
A
der Typ von
alloc
ist. Der Zeiger bleibt nur für die Lebensdauer des
promise
Objekts gültig.
|
| Keiner der oben genannten | Das Programm ist fehlerhaft. |
Parameter
| alloc | - | Allokator, der zur Allokation des gemeinsamen Zustands verwendet wird |
| other | - |
ein weiteres
std::experimental::promise
, von dem der Zustand übernommen wird
|
Ausnahmen
1,2)
(keine)