Es ist schon eine Weile her, dass ich in C++ programmiert habe und ich denke, die meisten Programmierer in C++ würden zustimmen, dass eine der kniffligsten Entscheidungen darin besteht, aus einer fast schwindelerregenden Anzahl verfügbarer Stringtypen zu wählen. Ich bevorzuge ATL Cstring
wegen seiner Benutzerfreundlichkeit und Funktionen, möchte aber eine vergleichende Studie der verfügbaren Optionen. Ich habe SO ausgecheckt und habe keinen Inhalt gefunden, der die Auswahl der richtigen Zeichenfolge unterstützt. Es gibt Websites, die Konvertierungen von einer Zeichenfolge zur anderen angeben, aber das ist nicht das, was wir hier wollen.C++ Strings, wann was zu verwenden?
Würde gerne einen Vergleich basierend auf Spezialität, Leistung, Portabilität (Windows, Mac, Linux/Unix, etc), Benutzerfreundlichkeit/Funktionen, mehrsprachige Unterstützung (Unicode/MBCS), Nachteile (falls vorhanden), und alle anderen speziellen Fälle.
Ich lese die Strings auf, die ich bisher gefunden habe. Ich glaube, es würde mehr geben, also können wir das später bearbeiten, um andere Optionen zu berücksichtigen. Wohlgemerkt, ich habe vor allem unter Windows gearbeitet, so spiegelt die Liste das gleiche:
char*
std::string
basic_string
der STLCString
ATL- MFC
CString
BSTR
_bstr_t
CComBstr
Verwenden Sie sie alle. Du wirst sowieso mit allen drin sein, also versuche nicht, am Anfang wählerisch zu sein. –
Verwende 'CComBstr' nur, wenn du mit COM arbeitest. –
Sie könnten ICU-Strings in den Mix für eine ordnungsgemäße Unicode-Behandlung hinzufügen. –