Доброго времени суток.
Изучаю C++ по книге «Stroustrup Bjarne - Programming- Principles and Practice using C++, 2nd». Дошёл до векторов, в книге приводится пример с температурами
http://i.piccy.info/i9/105309d932f37898357ae68de01a693e/1438001476/146931/895...
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
vector <double> temps;
for(double temp; cin >> temp;)
temps.push_back(temp);
double sum = 0;
for(int x : temps)
sum += x;
cout << "Average temperature: " << sum / temps.size() << '\n';
sort(temps);
cout << "Median temperature: " << temps[temps.size() / 2] << '\n';
return 0;
}
Пробую скомпилировать, выпадает ошибка:
https://bpaste.net/show/18e70b20bd20
Если убрать '-std=c++11' то тогда ругается на 'range-based «for» loops are not allowed in C++98 mode'
В чём проблема?
ps Дальше идут упражнения, основывающиеся на данном примере. А я не могу понять, почему не работает пример, то ли я где-то допустил ошибку, то ли проблема с компилятором.
Использую gcc-4.8.4, Gentoo Linux.