クラス内で typedef を前方宣言するための最良の解決策は何ですか。これが私が解決する必要があるものの例です:
class A;
class B;
class A
{
typedef boost::shared_ptr<A> Ptr;
B::Ptr foo();
};
class B
{
typedef boost::shared_ptr<B> Ptr;
A::Ptr bar();
};
私はちょうど次のことができると思います:
boost::shared_ptr<B> foo();
しかし、よりエレガントなソリューションはありますか?