Namespaces
Variants

std::experimental::promise<R>:: promise (library fundamentals TS)

From cppreference.net
promise ( ) ;
(1) (library fundamentals TS)
template < class Alloc >
promise ( std:: allocator_arg_t , const Alloc & alloc ) ;
(2) (library fundamentals TS)
promise ( promise && other ) noexcept ;
(3) (library fundamentals TS)
promise ( const promise & other ) = delete ;
(4) (library fundamentals TS)

Construit un objet std::experimental::promise .

1) Constructeur par défaut. Construit la promesse avec un état partagé vide.
2) Construit la promesse avec un état partagé vide. L'état partagé est alloué en utilisant alloc , qui est traité comme un allocateur à type effacé (voir ci-dessous).
3) Constructeur de déplacement. Construit la promesse avec l'état partagé de other en utilisant la sémantique de déplacement. Après la construction, other n'a plus d'état partagé.
4) std::experimental::promise n'est pas copiable.

Allocateur à effacement de type

Les constructeurs de promise prenant un argument d'allocateur alloc traitent cet argument comme un allocateur à effacement de type. Le pointeur de ressource mémoire utilisé par promise pour allouer de la mémoire est déterminé en utilisant l'argument d'allocateur (s'il est spécifié) comme suit :

Type de alloc Valeur du pointeur de ressource mémoire
Inexistant (aucun allocateur spécifié au moment de la construction) La valeur de std:: experimental :: pmr :: get_default_resource ( ) au moment de la construction.
std::nullptr_t La valeur de std:: experimental :: pmr :: get_default_resource ( ) au moment de la construction.
Un type pointeur convertible en
std:: experimental :: pmr :: memory_resource *
static_cast < std:: experimental :: pmr :: memory_resource * > ( alloc )
Une spécialisation de
std::experimental::pmr::polymorphic_allocator
alloc. resource ( )
Tout autre type satisfaisant aux exigences Allocator Un pointeur vers une valeur de type std:: experimental :: pmr :: resource_adaptor < A > ( alloc ) , où A est le type de alloc . Le pointeur reste valide uniquement pendant la durée de vie de l'objet promise .
Aucun des cas ci-dessus Le programme est mal formé.

Paramètres

alloc - allocateur à utiliser pour allouer l'état partagé
other - autre std::experimental::promise dont acquérir l'état

Exceptions

1,2) (aucun)