标签: c++ class struct
例如:
struct X{ X():a{10} {} void foo() { a = 10; } private: int a; };
为什么在变量a尚未声明时编译?
答案 0 :(得分:9)
编译器基本上对类或结构定义进行了两次传递。一个用于解析和处理成员声明的结构/类,然后是内联函数的一个传递。