我收到错误:
expected primary-expression before '.' token
在以下程序中:
#include <iostream>
int main() {
struct a {
int y;
};
int n = 0;
n = a.y;
std::cout << "n: " << n << "\n";
return 0;
}
我在vim中使用gcc g ++编译器和Syntastic。这不应该起作用吗?
答案 0 :(得分:3)
a
是类型,不是对象。
在使用任何成员之前,您需要创建a
的实例:
a b = { 1 };
int n = 0;
n = b.y;
std::cout << "n: " << n << "\n";