C++ 11のstd :: shared_ptr <>は、一種のbool演算子を提供します。なぜstd :: weak_ptr <>はブール変換を行いませんか?
operator unspecified-bool-type() const;
(それが原因タイプbool
のdangers from implicit castingにまっすぐアップoperator bool() const
ではありません。)
なぜのstd :: weak_ptrを<>は、同様の演算子を持っていませんか?私は
if(wp)
のweak_ptrのためのなぜ無ブール型変換をしたいときに自分自身が常に
if(!wp.expired())
を入力して見つけますか?
機能はデフォルトで実装されていないため? –
'オペレータbool'が安全にC++ 11でストレートアップを行うことができます。http://stackoverflow.com/a/6242355/46642 –