Namespaces
Variants

std::experimental::unique_resource<R, D>:: reset

From cppreference.net
void reset ( ) noexcept ;
(1) (library fundamentals TS v3)
template < class RR >
void reset ( RR && r ) ;
(2) (library fundamentals TS v3)
1) Gibt die Ressource frei, indem der Deleter mit dem zugrundeliegenden Ressourcen-Handle aufgerufen wird, falls das unique_resource diese besitzt. Das unique_resource besitzt die Ressource nach dem Aufruf nicht mehr.
2) Ersetzt die Ressource durch Aufruf von (1) und weist dann den gespeicherten Ressourcen-Handle mit std:: forward < RR > ( r ) zu, falls std:: is_nothrow_assignable_v < RS, RR > true ist, andernfalls mit std:: as_const ( r ) , wobei RS der Typ des gespeicherten Ressourcen-Handles ist. Die unique_resource besitzt die Ressource nach dem Aufruf.
Wenn die Kopierzuweisung des Store-Ressourcen-Handles eine Ausnahme auslöst, ruft sie del_ ( r ) auf, wobei del das Deleter-Objekt ist.
Diese Überladung nimmt nur dann an der Überladungsauflösung teil, wenn der ausgewählte Zuweisungsausdruck, der die gespeicherte Ressourcen-Handle zuweist, wohlgeformt ist.
Das Programm ist fehlerhaft, wenn del_ ( r ) fehlerhaft ist.
Das Verhalten ist undefiniert, wenn del_ ( r ) zu undefiniertem Verhalten führt oder eine Ausnahme auslöst.

Inhaltsverzeichnis

Parameter

r - Ressourcenhandle für eine neue zu verwaltende Ressource

Rückgabewert

(keine)

Ausnahmen

2) Jede Ausnahme, die beim Zuweisen des gespeicherten Ressourcen-Handles geworfen wird.

Hinweise

Der Mechanismus stellt sicher, dass keine Ressourcen verloren gehen.

Beispiel

Siehe auch

ersetzt das verwaltete Objekt
(öffentliche Elementfunktion von std::unique_ptr<T,Deleter> )