名前空間
変種
操作

std::weak_ptr<T>::use_count

提供: cppreference.com
< cpp‎ | memory‎ | weak ptr
 
 
ユーティリティライブラリ
汎用ユーティリティ
日付と時間
関数オブジェクト
書式化ライブラリ(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)
 
動的メモリ管理
未初期化記憶域
ガベージコレクションサポート
その他
(C++20)
(C++11)
(C++11)
C のライブラリ
低水準のメモリ管理
 
 
long use_count()constnoexcept;
(C++11以上)

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

目次

[編集]引数

(なし)

[編集]戻り値

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

[編集]ノート

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

[編集]

[編集]関連項目

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