Namensräume
Varianten
Aktionen

std::undeclare_reachable

Von cppreference.com
< cpp‎ | memory
 
 
Speicherverwaltungsbibliothek
(nur Exposition*)
Algorithmen für uninitialisierten Speicher
(C++17)
(C++17)
(C++17)
Beschränkte uninitialisierte
Speicher-Algorithmen
C-Bibliothek

Allocatoren
Speicherressourcen
Unterstützung für Garbage Collection
(C++11)(bis C++23)
undeclare_reachable
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
(C++11)(bis C++23)
Uninitialisierter Speicher
Explizites Lebenszeitmanagement
 
Definiert in Header <memory>
template< class T >
T* undeclare_reachable( T* p );
(seit C++11)
(in C++23 entfernt)

Entfernt den erreichbaren Status des Objekts, auf das vom Zeiger p verwiesen wird, falls dieser zuvor durch std::declare_reachable gesetzt wurde. Wenn das Objekt mehrmals als erreichbar deklariert wurde, sind gleich viele Aufrufe von undeclare_reachable erforderlich, um diesen Status zu entfernen. Sobald ein Objekt nicht mehr als erreichbar deklariert ist und keine Zeiger mehr darauf verweisen, kann es vom Garbage Collector wiederhergestellt oder von einem Leckdetektor als Leck gemeldet werden.

Inhalt

[bearbeiten] Parameter

p - Ein Zeiger auf ein Objekt, das zuvor als erreichbar deklariert wurde und seitdem nicht zerstört wurde

[bearbeiten] Rückgabewert

Eine sicher abgeleitete Kopie von p.

[bearbeiten] Ausnahmen

Wirft nichts.

[bearbeiten] Siehe auch

(C++11)(entfernt in C++23)
deklariert, dass ein Objekt nicht wiederverwendet werden kann
(Funktion) [edit]