Ошибка: 'stod' не был объявлен в этой области

Я работаю над проектом для C++, и мне нужно преобразовать строку в двойную, но я продолжаю получать сообщение об ошибке 'stod', которая не была объявлена ​​в этой области. Поспешные ответы будут с благодарностью!

#include <iostream>
#include <string>
#include <sstream>
#include <fstream>
#include <vector>

using namespace std;

struct Station
{
string StationID, StationName;
double Elevation, Latitude, Longitude;
int Date, MXPN, MaxTemp, MinTemp, ObsTime;
};

int main()
{
//Initial Variables
ifstream InputFile;
vector<Station> Entry;
string DummyLine, TempLine;
double TempDouble;
int Counter = 0;


InputFile.open("finalc++.csv");
getline(InputFile, DummyLine);
while (InputFile.good())
{
    Entry.push_back(Station());
    getline(InputFile, TempLine);
    stringstream ss (TempLine);
    getline(ss, DummyLine, ',');
    Entry[Counter].StationID = DummyLine;
    getline(ss, DummyLine, ',');
    Entry[Counter].StationName = DummyLine;
    getline(ss, DummyLine, ',');
    Entry[Counter].Elevation = stod(DummyLine);
    Counter++;
}
for (int i = 200; i <= 500; i++)
{
    cout << Entry[i].StationID << endl;
    cout << Entry[i].StationName << endl;
}

    return 0;
}

Есть ли какая-то библиотека, которую я должен включить, чтобы иметь возможность использовать ее? Кстати, я использую кодовые блоки 12.11 на машине с Windows x86.

1 ответ

Это известная ошибка в gcc 4.x

Включение стандартных C++11, в зависимости от вашей IDE, в CodeBlocks, перейдите по ссылке: settings, compiler и проверьте, "чтобы g++ следовал ISO C++11...", если вы используете компилятор gcc;

Другие вопросы по тегам