Namespaces
Variants

std:: undeclare_reachable

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
undeclare_reachable
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
定义于头文件 <memory>
template < class T >
T * undeclare_reachable ( T * p ) ;
(C++11 起)
(C++23 中移除)

移除由指针 p 引用的对象的可达状态(若该状态先前已通过 std::declare_reachable 设置)。若对象被多次声明为可达,则需要对应次数的 undeclare_reachable 调用才能移除该状态。当对象不再被声明为可达且无指针引用时,垃圾回收器可回收该对象,或由泄漏检测器报告为内存泄漏。

目录

参数

p - 指向先前声明为可达且此后未被销毁的对象的指针

返回值

p 的一个安全派生副本。

异常

不抛出任何异常。

参见

(C++11) (removed in C++23)
声明对象不可被回收
(函数)