# std::undeclare_reachable

From cppreference.com
< cpp‎ | memory

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

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.

### Parameters

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

### Return value

A safely-derived copy of `p`.

### Exceptions

None

### Example

| This section is incomplete Reason: no example

### See also

declare_reachable (C++11) | declares that an object can not be recycled (function)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/memory/gc/undeclare_reachable&oldid=80259"