私は現在、次のような状況にあります。
struct A {
shared_ptr<B> b;
};
struct B {
shared_ptr<A> a;
};
//...
shared_ptr<A> a(new A());
shared_ptr<B> b(new B());
a->b(b);
b->a(a);
参照が相互にポイントし続けるため、これが機能しないことはわかっています。私はまた、weak_ptr
この問題を解決すると言われました。
ただし、weak_ptr
getまたは->
overloadはありません。'use'についての言及を聞いたことがlock()
ありますが、これを正しく行う方法のコード例を誰かに教えてもらえますか?