Scroll to navigation

std::undeclare_reachable(3) C++ Standard Libary std::undeclare_reachable(3)


std::undeclare_reachable - std::undeclare_reachable


Defined in header <memory>
template< class T > (since C++11)
T* undeclare_reachable( T* p ); (removed in C++23)

Removes the reachable status of the object, referenced by the pointer p, if it was
previously set by std::declare_reachable. If the object was declared reachable
multiple times, equal number of calls to undeclare_reachable would be needed to
remove this status. Once the object is not declared reachable and has no pointers
referencing it, it may be reclaimed by garbage collector or reported as a leak by a
leak detector.


p - a pointer to an object previously declared reachable and not destructed since

Return value

A safely-derived copy of p.


Throws nothing.


This section is incomplete
Reason: no example

See also

declare_reachable declares that an object can not be recycled
(C++11)(removed in C++23) (function)