CString in std::string konvertieren



  • Hallo,
    ich will im Moment eine Funktionalität meines Programms rausziehen und daraus eine lib machen.
    Dafür dachte ich mir, ich werfe allen überflüssen oberhead weg und habe somit auch den vorkompilierten Header raus genommen.

    Nun will ich in alle Klassen nur das includieren, was sie wirklich benötigen.

    Ich hatte bis jetzt immer ein CString den ich per .GetString in einen std::string umgewandelt habe.
    Jetzt mäckert der Kompilier rum:

    error C2440: 'Initialisierung': 'const wchar_t *' kann nicht in 'std::basic_string<_Elem,_Traits,_Ax>' konvertiert werden
    

    Ich gehe davon aus, dass ein define oder ähnliches fehlt, so dass der Kompilier annimmt, dass mein standard String wchar_t ist und er mit der Methode es auf das casten will.

    Da ich einen html-request mache bekam ich die CString deklaration über folgenden include:

    #include <afxinet.h>
    

    Wie muss ich den CString richtig einbinden, dass er bei der Methode .GetString auch das gewünschte macht?

    Danke



  • das Problem lag wo anders:
    Zeichensatz von Unicode zu Multi-Byte-Zeichensatz

    Aber hätte trotzdem eine Frage:
    Welche Klasse muss ich includieren, damit er CString und DWORD kennt?


  • Mod

    CString kommt über ATL (atlbase.h) oder MFC (afx.h)
    DWORD kommt über windows.h (eingeschlossen in afx.h)



  • super vielen Dank
    afx.h war das, was ich gesucht habe


Anmelden zum Antworten