我要声明一个异常处理类,例如:
class A
{ public: class B { publc: B(){} }; };
我这样在类A的内部定义类B可以通过但我我按下面的方法:
class A
{ public: class B{}; };
class A::B()
{
public:B();
}
这样在类A的外部定义B去通不过!
这是为什么啊?
我的定义有问题???????
我想你的意思是说你在类A的外部定义函数B()不能通过是吧!这是因为你在类A中并没有申明函数B(),在外面定义那肯定不行啊。而且我看你的意思是想定义 B()为类B的默认构造函数,那改成这样就可以了:
class A
{
public: class B { public: B();//这里必须要申明 };
};
A::B::B() { }//函数B()的定义应该这样写