class宣言
class B;
class A {
B *b;
};
class B {
};
今まで上のやり方でやってたけど、下のやり方でも可能。
class A {
class B *b;
};
class B {
};
class Bがnamespaceを使っているときはうまくいかない。どうやればいいのだろう。
// これはエラー
class A {
class bb::B *b;
};
namespace bb {
class B {
};
};
結局こんな感じでやればいいということだろう。
namespace bb { class B; }
namespace xx { template class X; }
class A {
public:
bb::B *b;
xx::X *x;
class C *c;
};
/////////////////////////////
namespace bb {
class B {
};
}
namespace xx{
template class X {
T t;
};
}
class C {
};