返回嵌套类产生的错误
class a {
private:
class b {
public:
int mem;
b(int v):mem(v) {}
};
b bmem;
public:
a(int v):bmem(v) {}
b* test();
};
b* test() {
cout<<"hello";
}
上面的test成员函数返回嵌套b类指针,其定义在类的外面,骗译器会提示有错,把定义放在里面就可以能过编译。
请教人教我其中的原因。