VS2012 で失敗するコードを次に示します。
class A;
class B
{
bool A();
A member; // Error: function B::A is not a type name
};
なぜこれが機能しないのですか?A
明らかに、 typeではなく、 typeのメンバーを作成しようとしていますB:A()
(コンパイラが正しく指摘しているように、これは型ではありません)。またはの名前を変更せずにこれを回避する方法はありますB:A()
かclass A
? member
型にしたいことをコンパイラに明示的に伝えることはできますclass A
か?