名前空間
変種
操作

std::declare_reachable

From cppreference.com
< cpp‎ | memory
 
 
メモリ管理ライブラリ
(説明用*)
未初期化メモリのアルゴリズム
(C++17)
(C++17)
(C++17)
制約付き未初期化
メモリアルゴリズム
Cライブラリ

アロケータ
メモリリソース
ガベージコレクションのサポート
declare_reachable
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
(C++11)(C++23まで)
未初期化ストレージ
(C++20まで*)
(C++20まで*)
明示的な生存期間管理
 
ヘッダ <memory> で定義
void declare_reachable( void* p );
(C++11以降)
(C++23で削除)

ポインタpが参照するオブジェクトを到達可能と宣言します。到達可能なオブジェクトは、ガベージコレクタによって削除されたり、すべてのポインタが破棄された場合でもリーク検出器によってリークとみなされたりすることはありません。オブジェクトは複数回到達可能と宣言されることがありますが、その場合、このプロパティを削除するには、std::undeclare_reachable の呼び出しが複数回必要になります。たとえば、XORリンクリストの実装でガベージコレクションが有効になっている場合、そのノードを到達可能と宣言する必要があります。

目次

[編集] パラメータ

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

[編集] 戻り値

(なし)

[編集] 例外

システムが到達可能オブジェクトの追跡に必要なメモリを割り当てられない場合、std::bad_alloc をスローする可能性があります。

[編集] 関連項目

(C++11)(C++23で削除)
オブジェクトがリサイクルできることを宣言します
(関数テンプレート) [編集]
English 日本語 中文(简体) 中文(繁體)