名前空間
変種
操作

std::declare_reachable

提供: cppreference.com
< cpp‎ | memory
 
 
 
動的メモリ管理
未初期化記憶域
(C++17)
ガベージコレクションサポート
declare_reachable
(C++11)
その他
(C++20)
(C++11)
(C++11)
C のライブラリ
低水準のメモリ管理
 
ヘッダ <memory> で定義
void declare_reachable( void* p );
(C++11およびそれ以降)

ポインタ p によって参照されるオブジェクトが到達可能であると宣言します。 到達可能なオブジェクトは、それを指すポインタがすべて破棄されても、ガベージコレクタによって削除されず、またはリーク検出ツールによってリークとみなされません。 あるオブジェクトが到達可能であると複数回宣言しても構いません。 その場合、この性質を削除するためには std::undeclare_reachable を複数回呼ぶ必要があります。 例えば、処理系が有効化されたガベージコレクタを持つ場合、XOR連結リストはそのノードを到達可能であると宣言する必要があります。

目次

[編集] 引数

p - 安全に派生したポインタ、またはヌルポインタ

[編集] 戻り値

(なし)

[編集] 例外

システムが到達可能なオブジェクトを追跡するために必要なメモリを確保できない場合、 std::bad_alloc を投げるかもしれません。

[編集]

[編集] 関連項目

オブジェクトが回収できることを宣言します
(関数テンプレート) [edit]