[C++] string in String konvertieren?

Termy2007

Mitglied
Hallo!
Ich habe ein kleines, aber ärgerliches Problem!

Seht selbst:
Konvertierung des Parameters 2 von 'std::string' in 'System::String ^' nicht möglich

Ist das nicht verrückt?
Ich habs schon mit Convert::ToString und static_cast versucht!

Gibts da einen Ausweg? (Außer den std::string abspeichern zu müssen und ihn dann von dort aus in einen System::String zu laden)

Mfg
Termy2007
 
Das problem hatte ich auch schon. Wollte aus einer Textbox den text auslesen udn in eine Datei schreiben.
Nach vielen stunden Foren lesen und ausprobieren hab ich mich einfach für eine Richtextbox entschieden.
 
Bei mir ist das ein wenig anders!
Ich habe eine Funktion die einen std::string erstellt(geht nicht anders!) und eine zweite, die den Wert aufnehmen soll, aber einen System::String braucht!
 
Sollte so gehen:
C++:
std::string  str1 = "irgendwas";
String      ^str2 = gcnew String(str1.c_str());
Gruß
MCoder
 
Hallo MCoder

Folgender Fehler kommt dabei heraus:
Code:
error C2228: Links von ".c_str" muss sich eine Klasse/Struktur/Union befinden.
Normalerweise behebe ich diesen Fehler, indem ich statt "." "->" benutze!
Aber diesmal bietet er mir die "c_str" Möglichkeit nicht an!

Muss man für c_str irgendwas spezielles einbinden?
 
"c_str()" ist ein Methode der string-Klasse aus der STL. Wenn du mit string-Objekten arbeitest, steht dir diese Methode zur Verfügung. Warum also die Fehlermeldung entsteht, kann ich dir so nicht sagen. Zeige doch mal etwas relevanten Code.

Gruß
MCoder
 
Hier die relevanten Teile des Codes:

Code:
.
.
.
string bitstring;
String ^bit_final;
.
.
.
bitstring = bitset<8>(textBox1->Text[i]).to_string();
bit_final = gcnew String(bit_final.c_str());
textBox2->Text->Insert(Convert::ToInt32(textBox1->Text->GetEnumerator()), bit_final);
.
.
.

Das bitset<8>....to_string(); produziert einen std::string!
Das textBox2->Text->Insert(..., bit_final) erwartet im 2. Parameter einen System::String!
 
Zuletzt bearbeitet:
Oh!
*rotwerd*:p
Das sollte es! lol! So konnte es ja nichts werden!!^^
Danke für deine Hilfe MCoder!
10 Punkte für deinen Beitrag!! ^^

Mfg
Termy2007
 
Hallo,

man sollte vielleicht noch anmerken, dass es sich hier anscheinend um C++/CLI und nicht um C++ handelt. Bevor sich jemand wundert, was diese lustigen Hütchen (^) und das Schlüsselwort gcnew im Quellcode suchen :)

Grüße,
Matthias
 
Zurück