std:: declare_reachable
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definiert im Header
<memory>
|
||
|
void
declare_reachable
(
void
*
p
)
;
|
(seit C++11)
(entfernt in C++23) |
|
Erklärt das Objekt, auf das der Zeiger p verweist, als erreichbar. Erreichbare Objekte werden weder vom Garbage Collector gelöscht noch von einem Leck-Detektor als Speicherleck betrachtet, selbst wenn alle Zeiger darauf zerstört werden. Ein Objekt kann mehrfach als erreichbar deklariert werden, in diesem Fall wären mehrere Aufrufe von std::undeclare_reachable erforderlich, um diese Eigenschaft zu entfernen. Zum Beispiel muss eine XOR-Verkettete Liste ihre Knoten als erreichbar deklarieren, wenn die Implementierung Garbage Collection aktiviert hat.
Inhaltsverzeichnis |
Parameter
| p | - | ein sicher abgeleiteter Zeiger oder ein Nullzeiger |
Rückgabewert
(keine)
Exceptions
Kann std::bad_alloc werfen, falls das System den zur Verfolgung erreichbarer Objekte benötigten Speicher nicht allozieren kann.
Siehe auch
|
(C++11)
(removed in C++23)
|
deklariert, dass ein Objekt recycelt werden kann
(Funktions-Template) |