<分区>
我是 C++ 的新手。我从“使用 C++ 编程原则和实践”一书开始。到目前为止一切都很好,但我在编译某些命令时遇到了问题。我写了一个简单的代码如下:
int main()
{
vector<double> temps;
for (double temp; cin >> temp;) {
temps.push_back(temp);
}
double sum = 0;
for (int x:temps) sum += x;
cout << "\nAverage temperature is: " << sum / temps.size() << endl;
sort(temps);
cout << "Median temperature is: " << temps[temps.size()/2] << endl;
}
不幸的是,我收到有关 for 循环的编译错误:错误:C++98 模式下不允许基于范围的“for”循环
。
我已经下载了带有新 GCC 编译器的最新版本的 CodeBlocks,但仍然出现同样的错误。我也在 CodeBlocks 中尝试过其他编译器,但它们没有解决问题。
我对“constexpre”命令也有同样的经历,但我无法解决它。顺便说一句,本书的示例和练习有时需要一个“.h”文件,我把它放在这个文件所在的文件夹中。有什么建议吗?