2012-06-18 6 views
6

ich Schlüsselwort auto verwenden in meinem CodeC++ Auto nicht eine Art

137  auto i = boost::find(adresses, adress);        

zum Kompilieren mit folgendem Befehl I

[[email protected] tests]$ clear;g++ testCoverDownloader.cpp ../CoverDownloader.cpp -I /usr/include/QtGui/ -I /usr/include/QtCore/ -lQtGui -lQtCore -std=c++0x 

../CoverDownloader.cpp:137:10: error: ‘i’ does not name a type 
../CoverDownloader.cpp:139:8: error: ‘i’ was not declared in this scope 

mit -std = C++ 0x erhalte diese Fehler sollen nicht nennen habe den Trick gemacht. Was ist falsch ?

+1

Der Fehler liegt höchstwahrscheinlich in Ihrer Verwendung von boost :: find. mit dem gesagt, bitte post GCC version. –

+0

Einige gcc-Versionen nehmen '-std = C++ 11' an. Wird das repariert? – Anthony

+0

GCC-Version 4.6.3 20120306 (Red Hat 4.6.3-2) (GCC), Plattform Fedora 16 –

Antwort

3

Die Header boost werden nicht aus dem gleichen Grund abgeholt, wie die Qt Header nicht, wenn Sie -I /usr/include/QtCore/ angeben. Es gibt nichts Besonderes an den boost Header für den Compiler zu ihnen teilweise sein. Der Abschnitt Search Path der GCC-Dokumentation kann Ihnen helfen.