E:\bird\bird\bird\barrier.h:31: error: ISO C++ forbids in-class initialization of non-const static member 'barrier::score' public: static int score=0; ^
时间: 2024-04-16 13:26:24 浏览: 112
C++错误提醒
这个错误是因为在类定义中对非常量静态成员变量 `score` 进行了初始化。根据 ISO C++ 标准,非常量静态成员变量不能在类定义中进行初始化。
要解决这个问题,你可以将静态成员变量 `score` 的初始化从类定义中移动到类外部的源文件中。在源文件中,你可以使用类名加作用域解析运算符 `::` 来初始化静态成员变量。例如:
```cpp
// 在 barrier.cpp 或其他源文件中
int barrier::score = 0;
```
请确保在源文件中有类外部的静态成员变量的定义,并且不要在类定义中进行初始化。这样,你就可以解决这个编译错误。
阅读全文