Scroll to navigation

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

NAME

std::declare_reachable - std::declare_reachable

Synopsis


Defined in header <memory>
void declare_reachable( void* p ); (since C++11)
(removed in C++23)


Declares the object referenced by the pointer p reachable. Reachable objects will
not be deleted by the garbage collector or considered to be a leak by a leak
detector even if all pointers to it are destroyed. An object may be declared
reachable multiple times, in which case multiple calls to std::undeclare_reachable
would be needed to remove this property. For example, a XOR linked list needs to
declare its nodes reachable if the implementation has garbage collection enabled.

Parameters


p - a safely-derived pointer or a null pointer

Return value


(none)

Exceptions


May throw std::bad_alloc if the system cannot allocate memory required to track
reachable objects.

See also


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

2024.06.10 http://cppreference.com