java/C++惊天大发现,C++居然不需要static类
java/C++惊天大发现,C++竟然不需要static类class A{public:class B{int ipublic:B(int v):i(v){}void sho
java/C++惊天大发现,C++竟然不需要static类
class A
{
public:
class B
{
int i;
public:
B(int v):i(v){}
void show() const
{
cout<<i<<endl;
}
};
static void show()
{
B *b = new B(123);
b->show();
cout<<"AAA"<<endl;
delete b;
}
};
void test()
{
A::show();
}
B类定义在A类内,A类的static函数调用了B类的对象,在java里,B类就得必须是static的,而C++不需要!
逆天了
[解决办法]B是一个类 不是一个变量 不属于任何一个对象 Java那个才叫反人类
[解决办法]Java通过static区分nested class和inner class,而C++只有nested class没有inner class。