Code Bye

不能用初始值设定项列表初始化非聚合

static const set<double> ELEVATIONS = { 0, 5, 10, 15, 20, 30, 50, 70, 90 };
error C2552: “gnut::ELEVATIONS”: 不能用初始值设定项列表初始化非聚合
1>          “std::set<_Kty>”: 不聚合带基的类型
1>          with
1>          [
1>              _Kty=double
1>          ]
有高手知道这改怎么改吗?
解决方案

10

升级编译器即可

10

编译器太旧了吧。initializer list 是从 c++11 才开始支持的。

20

使用VS2015肯定没问题,VS系列里对C++11支持最好

20

换个编译器。
gcc4.8.x以上和clang3.3+以上

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明不能用初始值设定项列表初始化非聚合