是否可以在外部类中声明的内部类中使用变量。
我想实现以下目标。可能吗。
我收到以下错误。
prog.cc:在构造函数'Outer :: Inner :: Inner()'中:prog.cc:12:25:错误:无效使用非静态数据成员'Outer :: i'
内部(){i = 5; };
#include <iostream>
using namespace std;
class Outer {
public:
int i;
class Inner; // forward declaration of Outer::Inner
friend class Inner;
class Inner {
Inner() {
i = 5;
};
};
};
int main() {
return 0;
}
最佳答案
与Java不同,C ++“内部类”与创建它们的外部类没有任何关系。您将必须传递一个指向外部类的指针或引用。
关于c++ - C++如何在外部类中声明的内部类中使用变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51785456/