C++ String in Label ausgeben lassen

MasterCacher

Lt. Junior Grade
Registriert
Dez. 2007
Beiträge
470
Hallo,

ich möchte gerne meinen String in einem label ausgegeben haben lassen.

so stelle ich mir das ganze vor:
string beispiel;

beispiel = "ich bin ein beispiel satz";

this->label1->Text = beispiel;

dabei spuckt er die Meldung aus: "cannot convert argument 1 from 'std::string' to System::String ^'


Könnt ihr mir sagen wie man das Problem löst?
Ich habe versucht online zu googlen, habe auch schon diverse Sachen ausprobiert. Allerdings hab ich es nicht hinbekommen, entweder kamen neue Fehler hinzu oder ich habe den Lösungsansatz nicht verstanden.
 
Ohne mich spezifischer mit der Umgebung auszukennen:
Gibt es eventuell an this->label1 eine set-Methode, die verschiedene Parameter-Typen erlaubt?
Andernfalls gibt es bestimmt auch eine Möglichkeit, einen System::String zu erstellen, in der Art:
Code:
System::String beispiel;
beispiel = new System::String("ich bin ein beispiel satz");
 
weiß ich leider nicht.
dein Beispiel funktioniert leider auch nicht. Da kommen diverse Fehlermeldungen auf. Unter anderem "set" Fehler und wieder Typen bedingt wegen String^ und String

die entwicklungsumgebung ist: Microsoft Visual Studio Express 2013
 
Exakt dass hilft mir nicht weiter.

habe es jetzt selbst lösen können:

statt die variable GLOBAL zu definieren habe ich sie lokal definiert

System::String^ beispiel= "blubb";
this->label1->Text = beispiel;

so einfach :'D

wenn jemand noch ne Lösung für die GLOBALE Variablen Definition hat, dann kann er mir die gerne nennen :D
 
Etwas mehr Informationen als drei Zeilen Code ohne Kontext wären schon hilfreich. Am ursprünglichen Code hat man ja noch nicht einmal gesehen, dass es sich um eine globale Variable handelt. Mir ist allerdings auch nicht klar, warum das einen Unterschied macht. Bin jetzt aber auch kein C++/CLI Experte
 
Zuletzt bearbeitet:
Ich glaube nicht, dass das hier irgendetwas mit der globalen Definition zu tun hat, sondern dass der = Operator eben einen System::string erwartet hat und keinen std::string. Diese Variante ist anscheinend nicht überladen. Genau das sagt aber doch auch die Fehlermeldung.
 
Zurück
Oben