Ich möchte ein STL Template (queue, list,…) in einem MFC - Projekt (Visual C++) verwenden, bekomme aber beim Kompilieren nur Fehlermeldungen. Verwende ich den selben Code in einem Standard - C++ Projekt, wird er ohne Probleme kompiliert und ausgeführt.
Hallo,
sicher bin ich nicht, aber du musst bei der STL immer den namespace angeben! ob das in Combination mit der MfC verwendbar ist weiss ich nicht(ich habe kein Windowssystem zur verfügung)
ich meine #include
std::queue zahlen; //Die Leerzeichen nach den > gehöhren raus, ich vermute nur dass dann HTML dazwischenpuscht
MfG
Daniel
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
es ist so das sich die komplette STL im „namespace std“ befindet. D.h. du musst jedes mal wenn du Element der STL verwendest std:: voranstellen. Da dies recht umstaendlich ist, gibt es zwei Moeglichkeiten das Problem zu umgehen:
du machst den namespace std global sichtbar, indem du am Anfang der Datei „using namespace std“ (vielleicht auch mit Semikolon danach) einfuegst
du verwendest die Dateien die die STL nicht im namespace std definieren, sie besitzen dann die Erweiterung .h (also #include in deinem Fall). Du solltest aber nicht beide Varianten mischen, das das zu schwerwiegenden Problemen fuehrt!
Ich persoenlich bevorzuge die erste Variante, da ich z.B. bei der anderen nicht genau weiss ob sie Standardkonform ist.