STL verwenden mit dem MS Developer Studio
-
Hallo Forum,
ich habe folgendes Problem:
Wenn ich ein Projekt anlege "Konsolenanwendung mit MFC Unterstützung" kann ich durch einbinden der STL-Header (z.B. #include <vector>) diese im Programm auch benutzen.
Mache ich dasgleiche in einem reinen MFC-Projekt (dialogfeldbasierend), meldet der Compiler Syntaxfehler. Wieso kann ich dort keine STL-Komponenten verwenden???Folgende inlcude-Dateien habe ih bisher ausprobiert, sie gehen alle nicht:
#include <vector>
#include <list>
#include <string> <-- Das wundert mich auch, ich kann nur CString benutzen!!!Also wie gesagt, wenn ich z.B. im Quellcode dann schreibe: vector<int> vecInt;
meckert der Compiler, dass er "vector" nicht kennt und dass ihn die <>-Zeichen stören.Wer kann mir helfen???
Danke.
Gruß,
RungeZipperer
-
vector usw liegen alle im namensraum std! Du musst also entweder std::vector schreiben oder nach dem include ein using std::vector machen
-
Aloha,
oder pauschal einfach hinter den includes Deiner Klasse
using namespace std;schreiben.
Und schon kennt er sie alle...
Grüße
BOA
-
das sollte man aber höchstens in cpp-Dateien machen, niemals in headern, da sonst der sinn der namespaces wieder weg is!
-
Yupp Deus,
klingt vernünftig.

Grüße
BOA
-
ich hatte ein ähnliches Problem.
Dabei ist "namespace std" in der cpp definiert -. und bekomme ich folgede Compiler-Meldung:error C2079: 'lesekopf' verwendet undefiniertes class 'basic_ifstream<char,struct std::char_traits<char> >
Wie das?
-
Code?