Stl?

Java/CppProgrammer

Erfahrenes Mitglied
Hallo allerseits.
Mal ne Frage. Wie verwende ich mit den MFC die STL. Bei mir erkennt er string nicht an, obwohl ich es eingebunden hab. Wenn ich versucht den Namespace STD zu verwenden,
meint er der wäre nicht deklariert.
 
Stimmt, ich war gestern wohl zu müde :p .
Trotzdem noch ne Frage:

PHP:
void CSdiView::OnLButtonDown(UINT nFlags, CPoint point) 
{
// TODO: Code für die Behandlungsroutine für Nachrichten hier einfügen und/oder Standard aufrufen
    string hallo("Hallo");
	CClientDC dc(this);
	dc.TextOut(point.x,point.y,hallo);
}
Irgentwie will der Compiler ne andere Art von string?
Einen will der nen anderen String
"Konvertierung des Parameters 3 von 'const char *(void) const' in 'const class CString &'
nicht moeglich
Der Kontext ermoeglicht keine Eindeutigkeit fuer ueberladene Funktionen
Fehler beim Ausführen von cl.exe.
sdi.exe - 1 Fehler, 0 Warnung(en)"
Gibt es keine möglickeit STRING aus der STL zu benutzen?

EDIT: Ach so CString. Ist das im Grunde das gleiche wie STRING nur von M$?
 
Zuletzt bearbeitet:
Microsoft hat eine ganze Menge Klassen (wie zum Beispiel CString) gebaut, bevor die STL in einer vernünftigen Variante überhaupt vorhanden war. Deshalb mehr oder weniger Klassen, die es in ähnlicher Form auch in der STL gibt.

Leider sind die nicht direkt kompatibel, man muss bei CString bzw. std::string meistens über const char* gehen.

Als Ausgleich sind die MS-Klassen meistens komfortabler zu bedienen (Lieblingsbeispiel: Eine String-in-Grossbuchstaben-Verwandel-Funktion sieht in STL potthässlich und völlig abnormal aus)
 
Zuletzt bearbeitet:
Zurück