CString zu string casten, wie?
-
Hallo,
finde in den FAQ + in der Suche nichts. Habe schon .GetBuffer(0) ausprobiert, funktioniert aber nicht.. (string) geht auch nicht.
Danke!
-
Versuch mal
std::string
-
Hi,
hab das mal ausprobiert und folgendes gemacht:
std::string tmp; tmp = request; // request ist vom Typ CString m_php.SendRequest(tmp); // Fehler hierkommt folgende Fehlermeldung:
error C2664: '__thiscall CString::CString(const class CString &)' : Konvertierung des Parameters 1 von 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' in 'const class CString &' nicht moeglich
-
Was ist m_php?
-
eine Variable

das ist von einer Klasse von mir.. SendRequest verlangt einen string.
-
personenkult schrieb:
std::string tmp; tmp = request; // request ist vom Typ CString m_php.SendRequest(tmp); // Fehler hierDa der Fehler erst bei m_php.SendRequest(tmp); auftritt, dürfte irgendwas mit der Funktion nicht stimmen. Poste doch mal die Funktion SendRequest();
-
er sagt nur das er einen string will und keinen CString annimmt.. die Funktion geht einwandfrei.
-
Aber so wie das hier steht, will er anscheinend auch keinen string. Den übergibst Du nämlich.
-
Tztztz. Das kommt davon wenn man kein Standard C++ gelernt hat...
std::string to CString:
CString myCString = mystring.c_str();CString to std::string
std::string = myCString.GetBuffer(0);Devil
-
Also wenn die fehlermeldung auf die m_php.SendRequest(tmp)-Zeile zeigt, dann sagt mir das, dass funktion einen CString und keinen std::string als parameter erwartet...
-
Ja, aber personenkult behauptet, dass es umbedingt ein string sein muss. Weiss der Geier warum.
-
CString zu string. Ich habe eine lib + Funktionen die mit std C++ geschrieben sind. Will sie nun mit der MFC benutzen. Die Funktion erwartet einen string (keinen CString).
string SendRequest(string parameter);CString myCString = mystring.c_str();
das hat mir aber weitergeholfen. RückgabeTyp der Funktion, in der ich SendRequest aufrufe, ist CString. Die Funktion SendRequest gibt aber string zurück. Also muss geparsed werden.
Danke euch allen.
