例如:
struct X{
X():a{10} {}
void foo() { a = 10; }
private:
int a;
};
为什么在变量 a 尚未声明时编译?
最佳答案
编译器基本上对类或结构定义进行两次遍历。一种用于结构/类以解析和处理成员声明,然后一种用于内联函数。
关于c++ - 为什么我可以在成员函数中使用尚未声明的成员变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42435051/