Was bedeutet diese Warnung?
-
Level.cpp
E:\MICROSOFT VISUAL STUDIO\MYPROJECTS\Junior\Level.cpp(70) : warning C4786: 'std::reverse_iterator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const *,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std:
:basic_string<char,std::char_traits<char>,std::allocator<char> > const &,std::basic_string<char,std::char_traits<char>,std::allocator<char> > const *,int>' : Bezeichner wurde auf '255' Zeichen in den Debug-Informationen reduziert
E:\MICROSOFT VISUAL STUDIO\MYPROJECTS\Junior\Level.cpp(70) : warning C4786: 'std::reverse_iterator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > *,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic
_string<char,std::char_traits<char>,std::allocator<char> > &,std::basic_string<char,std::char_traits<char>,std::allocator<char> > *,int>' : Bezeichner wurde auf '255' Zeichen in den Debug-Informationen reduziert
e:\microsoft visual studio\vc98\include\vector(39) : warning C4786: 'std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::vector<std
::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' : Bezeichner wurde auf '255' Zeichen in den Debug-Informationen verkürzt
e:\microsoft visual studio\vc98\include\vector(60) : warning C4786: 'std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::~vector<st
d::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >' : Bezeichner wurde auf '255' Zeichen in den Debug-Informationen verkürztLevel.obj - 0 Fehler, 4 Warnung(en)
Was sollen mir diese Warnungen sagen?
Der Code dazu sieht so aus:bool CLevel::LoadFile(string path) { ifstream in(path.c_str()); string strLine; // aktuelle Zeile string strTemp; // temporärer String string strPath; // Pfad-String string strCurName; // momentaner Objektname string strCurType; // momentaner Objekttyp vector<string> strLines; // Enthält alle Zeilen char buffer[512]; // Lesebuffer int iPos1=0, iPos2 = 0; // Positionsanzeiger // Pfad anhand des übergebenen Dateinamens feststellen iPos1 = path.find_last_of("\\"); strPath = path.substr(0,iPos1+1); // Komplette Datei in den Line-Buffer einlesen while(!in.eof()) { in.getline(buffer, 512); strTemp = buffer; strLines.push_back(strTemp); } // Datei wieder schließen in.close(); // Jetzt Zeile für Zeile einlesen // Zuerst Prüfen ob die erste Zeile mit "#JUNIOR" beginnt iPos1 = strLines[0].find("#JUNIOR"); if(iPos1 != string::npos) { // Der Versions-String steht dahinter this->strVersion = strLines[0].substr(8); } // Texturen suchen // ... return true; }
P.S.
Der Fehler hat wohl mit folgender Zeile zu tun:
vector<string> strLines;
Denn nehme ich diese und die damit verbundenen Zeilen weg bekomme ich die Warnung nicht mehr.
-
Das bedeutet, dass dein Compiler unfähig ist, aber das ist auch schon alles. Ich nehme an, du benutzt den MSVC++ 6?
Wie auch immer, die Funktionsfähigkeit des Programms wird nicht beeinträchtigt, lediglich der Debugger könnte durcheinanderkommen. In der Release-Version wirst du diese Warnung wohl auch nicht kriegen, weil da keine Debug-Symbole erstellt werden. Wenn ich dazu gezwungen bin, mit dem Compiler zu arbeiten, schreib ich meistens ein
#pragma warning(disable: 4786)
in die stdafx.h, die überall includet wird.
-
Ah gut, danke für die Antwort!
Und ja ich benutze MSV6 mit dem entsprechenden Compiler (welcher auch immer), zumindest für dieses Projekt.
Normaler Weise verwende ich gcc3.3.
-
0xdeadbeef schrieb:
Wenn ich dazu gezwungen bin, mit dem Compiler zu arbeiten, schreib ich meistens ein
#pragma warning(disable: 4786)
in die stdafx.h, die überall includet wird.
Klappt nur nicht AFAIK.
Bye, TGGC (Wähle deine Helden)