Fehler: 'stod' wurde nicht deklariert, in diesem Umfang

Arbeite ich an einem Projekt für c++, und ich brauche, um zu konvertieren einen string in einen double, aber ich erhalte die Fehlermeldung 'stod' wurde nicht deklariert in diesem Bereich. Übereilte Antworten würde sehr geschätzt werden!

#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;
}

Gibt es einige Bibliotheken, die ich einbeziehen muss, um es benutzen zu können?
btw ich verwende codeblocks 12.11 auf einem windows-Rechner der x86-Architektur.

Sie benötigen zum aktivieren der C++11
kompiliert einwandfrei mit visual c++ 12.0, gibt der zitierte Fehler mit mingw g++ 4.7.2. möglicherweise können Sie ein upgrade auf höhere version von g++ (ich weiß nicht, was gebündelt mit codeblocks 12.11, oder ob eine neuere version von g++ behebt dieses). oder einfach die Umsetzung Ihrer eigenen conversion-Funktion, z.B. basierend auf strtod.
Ich bin neu zu codieren, also habe ich keine Idee, wie das zu tun. Irgendeine Idee, wie das zu ermöglichen, c++11?
stackoverflow.com/questions/6528595/...

InformationsquelleAutor user3073174 | 2013-12-07

Schreibe einen Kommentar