Standard String (std::string) VS AnsiString
-
Hallo,
was ist vorteilhafter an AnsiString als am Standard String?
-
Nun, du kannst alle möglichen Sonderzeichen einfach so hineinschreiben, mit \ davor, im normalen string musst du die codes wissen (dezimal, hexadezimal, usw.), also schonmal 1 Pluspunkt für AnsiString
-
Also geht
std::string test;
test = "\n";nicht?
-
Enrico Stahn schrieb:
Also geht
std::string test;
test = "\n";nicht?
Doch.
Ich glaube, der einzige Vorteil von AnsiString ist, dass er eben von der VCL verwendet wird und er von deren Funktionen als Argument akzeptiert wird.
-
Enrico Stahn schrieb:
Also geht
std::string test;
test = "\n";nicht?
Ich meine kein \n \t \r \......... sondern ä ö ü § $ % & µ @ € und so.
-
Enrico Stahn schrieb:
was ist vorteilhafter an AnsiString als am Standard String?
Dass nahezu alle VCL-Klassen und -Komponenten mit AnsiString operieren.
-
... und das ansistring ne menge vorteilhafter methoden zum bearbeiten des strings mitbringt.
-
Das tut std::string auch, nur nützt dir das im VCL-Umfeld eben wenig.
-
Jansen schrieb:
Das tut std::string auch [...]
Leider aber nicht die selben komfortablen Funktionen wie AnsiString...
Was die Beiträge von Spieleprogrammierer angeht, so möchte ich bitten sie zu ignorieren, denn sie sind meines Wissens schlicht falsch.
-junix
-
junix schrieb:
Leider aber nicht die selben komfortablen Funktionen wie AnsiString.
"Leider" weil's nicht dieselben sind oder weil sie nicht "komfortabel" sind? Über letzteres kann man ja geteilter Meinung sein, aber was den Umfang und die Nützlichkeit der Methoden angeht braucht sich std::string sicher nicht zu verstecken.
Der Hauptvorteil des AnsiString ist und bleibt sein Zuschnitt auf die VCL (*). In einem Programm das sonst keine VCL-Klassen verwendet macht AnsiString auch keinen Sinn, oder bietet zumindest keinen echten Vorteil.
Natürlich alles IMO