问题似乎与int m = std::max({die1, die2, die3});
有关,它在eclipse中引发了一个错误,但是在Xcode中运行良好。这是为什么?
代码是
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int die1;
int die2;
int die3;
cin >> die1;
cin >> die2;
cin >> die3;
int m = std::max({die1, die2, die3});
cout << m << endl;
return 0;
}
错误是
../ src / playground.cpp:19:22:错误:预期的表达式
int m = std :: max({die1,die2,die3});
^
产生1个错误。
make:*** [src / playground.o]错误1
答案 0 :(得分:2)
我可以想到几个原因。首先,您应该为include <algorithm>
使用std::max
,其次,初始化程序列表重载仅在C ++ 11中添加,因此可能是您的Eclipse至少没有在C ++ 11中进行编译。 / p>