code falsch oder visual studio kaputt



  • Hallo, hier ist ein Auszug aus einem Beispielcode, der von VS bemängelt wird und ich weiß nicht wieso. Ich hab dieses Beispielprojekt vor Monatn geschrieben und es lief immer, auf einmal kommen Fehler die ich mir nicht erklären kann. Ich bin noch anfänger.

    //Vorlage zum Zerteilen des Strings
    	vector<string> split(const string &s, char delim) {
    		vector<string> elems;
    		stringstream ss(s);
    		string item;
    		while (getline(ss, item, delim)) {
    			elems.push_back(item);
    		}
    		return elems;
    	}
    

    Dieser simple Abschnitt verursacht zig Fehler und ich bin überzeugt dass ich nix verändert hab im Gegensatz zu früher als es noch lief. Woran liegt es, ist der Code falsch oder mein VS kaputt?? Die Fehlermeldungen:
    Severity Code Description Project File Line Column Source
    Error C2784 "std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)": template-Argument für "std::basic_istream<_Elem,_Traits> &&" konnte nicht von "int" hergeleitet werden. The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 16 1 Build
    Error C1903 Weiterverarbeitung nach vorherigem Fehler nicht möglich; Kompilierung wird abgebrochen. The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 16 1 Build
    Error C2780 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &)': Erwartet 2 Argumente - 3 unterstützt The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 16 1 Build
    Error C2780 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &)': Erwartet 2 Argumente - 3 unterstützt The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 16 1 Build
    Error C2079 'ss' verwendet undefiniertes class 'std::basic_stringstream<char,std::char_traits<char>,std::allocator<char>>' The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 14 1 Build
    Error C2440 'Initialisierung': 'const std::string' kann nicht in 'int' konvertiert werden The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 14 1 Build
    Error C2784 "std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)": template-Argument für "std::basic_istream<_Elem,_Traits> &" konnte nicht von "int" hergeleitet werden. The_Iron_price d:\p2016\the_iron_price\the_iron_price\csvio.h 16 1 Build
    Danke im Voraus


  • Mod

    Bitte vollständiges Minimalbeispiel, das - bis auf den Fehler - compilierbar ist.

    Sind alle nötigen Header eingebunden?



  • SeppJ schrieb:

    Sind alle nötigen Header eingebunden?

    .. wohl nicht. Es fehlt #include <string> und wahrscheinlich anschließend #include <sstream> . Letzterer inkludiert <string> beim VS.



  • Die Headerdatei sstream war nicht eingebunden. warum ich die entfernt hab weiß ich bis heut nicht. Danke


Anmelden zum Antworten