boost::weak_ptr
が定義されているためoperator<
、連想コンテナで使用できます。
私の質問は次のとおりです。weak_ptr
一部のオブジェクトの参照カウントがゼロに変更された場合でも、いくつかのオブジェクトのソート順は安定していますか? のようなコンテナを台無しにしませんstd::set
か?
例:
using namespace boost;
shared_ptr<A> sptrA1(new A);
weak_ptr<A> wptrA1 = sptrA1;
weak_ptr<A> wptrA2;
{ // begin Scope 1
shared_ptr<A> sptrA2(new A);
wptrA2 = sptrA2;
assert(wptrA1 < wptrA2); // assert #1
}
assert(wptrA1 < wptrA2); // assert #2
- アサート #1 が true の場合、アサート #2 は常に true を保持しますか?
- Scope1
wptrA2
の前後で同じ状態ですか?