名前空間
変種
操作

std::declare_reachable

提供: cppreference.com
< cpp‎ | memory
 
 
ユーティリティライブラリ
汎用ユーティリティ
日付と時間
関数オブジェクト
書式化ライブラリ(C++20)
(C++11)
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)
スワップと型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
一般的な語彙の型
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

初等文字列変換
(C++17)
(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]
close