名前空間
変種
操作

std::weak_ptr::use_count

提供: cppreference.com
< cpp‎ | memory‎ | weak ptr
 
 
 
動的メモリ管理
未初期化記憶域
(C++17)
ガベージコレクションサポート
その他
(C++20)
(C++11)
(C++11)
C のライブラリ
低水準のメモリ管理
 
 
long use_count() const noexcept;
(C++11およびそれ以降)

管理対象オブジェクトの所有権を共有している shared_ptr インスタンスの数を返します。 管理対象オブジェクトがすでに削除されていれば、つまり *this が空であれば、 0 を返します。

目次

[編集] 引数

(なし)

[編集] 戻り値

呼び出した瞬間の、管理対象オブジェクトの所有権を共有している shared_ptr インスタンスの数。

[編集] ノート

expired() の方が use_count() より速いかもしれません。 shared_ptr のコピーを作成したり削除したりする複数のスレッド間で管理対象オブジェクトが共有されている場合、この関数は本質的に競合しがちです。 その場合、呼び出し元スレッドによって一意に所有されているコピーの数と一致するとき、またはゼロのときにしか、結果は信頼できません。 他のいかなる値も、使用できる前に古くなる可能性があります。

[編集]

[編集] 関連項目

参照先のオブジェクトがすでに削除されたか調べます
(パブリックメンバ関数) [edit]