Untschied von string , String und AnsiString
-
Hallo es gibt ja verschiedene arten von strings.
z.b.
string ( aus #include <iostream> )
String ( aus #include <vcl> )
AnsiString ( aus #include <vcl> )
-
Hallo,
string (besser std::string)
das ist der String aus dem C++ Standard. Der ist aber in der aus #include <string> und nicht aus iostream.String ( aus #include <vcl> )
AnsiString ( aus #include <vcl> )
Das ist beides der gleiche Typ. Irgendwo in der dstring.h ([edit] das steht in der sysmac.h[edit]) stehttypedef AnsiString String;
Das ist der String aus der Borland (jetzt Codegear) VCL-Bibliothek.
-
AnsiString schrieb:
Hallo es gibt ja verschiedene arten von strings.
1. std::string stammt nicht aus #include <iostream> sondern aus #include <string>
2. C++ ist eine schon recht alte Sprache, anfangs gab es keine Standardisierten Stringdatentypen, und dies ist ein Grund für die Vielfalt der Strings heutzutage.Im Standard ist der std::string die "normale" Stringimplementierung für Zeichen (basierend auf dem Datentyp char) und std::wstring wiederum basierend auf wchar_t. Die anderen von dir erwähnten Strings sind Implementierungen der VCL-Bibliothek die nur im C++ Builder und in Delphi verwendet werden.
cu André
-
AnsiString schrieb:
Hallo es gibt ja verschiedene arten von strings.
z.b.
string ( aus #include <iostream> )
String ( aus #include <vcl> )
AnsiString ( aus #include <vcl> )
Ohhh, es gibt noch viel mehr, z.B. s2tring ( aus #include "Simon2.h" )
Ich nehme defaultmäßig immer std::string und nur, wenn ich externe Schnittstellen mit proprietären Stringtypen bedienen muss, mache ich mir entsprechende Konvertierungsfunktionen ... und damit komme ich ziemlich weit.
Gruß,
Simon2.