struct Marker
{
static int self_unum;
static int mark_unum;
static bool is_marking;
static int last_mark_cycle;
};
static Marker Team[11]={ {0,0,false,0} };
错误: /home/d/Documents/alice/src/Miracle_Mark_System.cpp:32:错误:“标记”的初始化程序太多 static Marker Team [11] = {{0,0,false,0}}; ^ ^
^
答案 0 :(得分:4)
static
关键字用于定义类,而不是实例,成员。这意味着它们是未附加到Marker
的任何特定实例的符号,并使用语法ClassName::classMember
(例如Marker::self_unum
)进行访问,而不是instanceName.instanceMember
(例如{{1} }})。
所以Team[0].self_unum
本身就是一个没有字段的结构,这就是你得到错误的原因。
从字段声明中删除无用的Marker
关键字:
static