C++ named requirements: Destructible
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Gibt an, dass eine Instanz des Typs zerstört werden kann.
Anforderungen
Der Typ
T
erfüllt die Anforderungen von
Destructible
wenn
Gegeben
-
u, ein Ausdruck vom TypT.
Die folgenden Ausdrücke müssen gültig sein und ihre spezifizierten Effekte haben.
| Expression | Post-conditions |
|---|---|
| u.~T ( ) |
Alle von
u
gehaltenen Ressourcen werden freigegeben, keine Ausnahmen werden ausgelöst.
|
Hinweise
Destruktoren werden implizit am Ende der Objektlebensdauer aufgerufen, beispielsweise beim Verlassen des Gültigkeitsbereichs oder durch die delete-Expression . Explizite Destruktoraufrufe, wie in der Typanforderungstabelle gezeigt, sind selten.
Dank Pseudo-Destruktoraufruf erfüllen alle skalaren Typen die Anforderung von Destructible , während Array-Typen und Referenztypen dies nicht tun. Beachten Sie, dass std::is_destructible Arrays und Referenztypen erlaubt.
Siehe auch
|
(C++11)
(C++11)
(C++11)
|
prüft, ob ein Typ einen nicht gelöschten Destruktor hat
(Klassen-Template) |
|
(C++20)
|
spezifiziert, dass ein Objekt des Typs zerstört werden kann
(Konzept) |