Verwenden von CString
In den Themen in diesem Abschnitt wird die Programmierung mit CString
beschrieben. Eine Referenzdokumentation zur -Klasse CString
finden Sie in der Dokumentation für CStringT
.
Schließen Sie zum Verwenden von CString
den atlstr.h
-Header ein.
Die CString
Klassen CStringA
, und CStringW
sind Spezialisierungen einer Klassenvorlage namens CStringT
basierend auf dem Typ der zeichenbasierten Daten, die sie unterstützen.
Ein CStringW
-Objekt enthält den - wchar_t
Typ und unterstützt Unicode-Zeichenfolgen. Ein CStringA
-Objekt enthält den char
-Typ und unterstützt Zeichenfolgen mit einem Byte und mehreren Byte (MBCS). Ein CString
-Objekt unterstützt entweder den char
-Typ oder den - wchar_t
Typ, je nachdem, ob das MBCS-Symbol oder das UNICODE-Symbol zur Kompilierzeit definiert ist.
Ein CString
-Objekt hält Zeichendaten in einem CStringData
-Objekt. CString
akzeptiert nullbasierte Zeichenfolgen im C-Format. CString
verfolgt die Zeichenfolgenlänge für eine schnellere Leistung, NULL
behält aber auch das Zeichen in den gespeicherten Zeichendaten bei, um die Konvertierung in zu unterstützen LPCWSTR
. CString
schließt das NULL-Abschlusszeichen ein, wenn eine Zeichenfolge im C-Format exportiert wird. Sie können ein an anderen NULL
Stellen in einem einfügen CString
, aber es kann zu unerwarteten Ergebnissen führen.
Der folgende Satz von Zeichenfolgenklassen kann verwendet werden, ohne eine MFC-Bibliothek mit oder ohne CRT-Unterstützung zu verknüpfen: CAtlString
, CAtlStringA
und CAtlStringW
.
CString
wird in nativen Projekten verwendet. Verwenden Sie für Projekte mit verwaltetem Code (C++/CLI) System::String
.
Um mehr Funktionen hinzuzufügen als CString
, CStringA
oder CStringW
derzeit bieten, sollten Sie eine Unterklasse von CStringT
erstellen, die die zusätzlichen Funktionen enthält.
Der folgende Code zeigt, wie Sie einen CString
erstellen und als Standardausgabe drucken können:
#include <atlstr.h>
int main() {
CString aCString = CString(_T("A string"));
_tprintf(_T("%s"), (LPCTSTR) aCString);
}
In diesem Abschnitt
Grundlegende CString
Vorgänge
Beschreibt grundlegende CString
-Vorgänge, darunter das Erstellen von Objekten aus C-Literal-Zeichenfolgen, das Zugreifen auf einzelne Zeichen in einem CString
, das Verketten von zwei Objekten und das Vergleichen von CString
-Objekten.
Zeichenfolgen Datenverwaltung
Erläutert die Nutzung von Unicode und MBCS mit CString
.
CString-Semantik
Erläutert, wie CString
-Objekte verwendet werden.
CString-Vorgänge im Zusammenhang mit Zeichenfolgen im C-Format
Beschreibt die Manipulation der Inhalte eines CString
-Objekts wie eine mit Null abschließende Zeichenfolge im C-Format.
Zuordnen und Freigeben von Arbeitsspeicher für eine BSTR
Erläutert die Verwendung von Arbeitsspeicher für ein - und BSTR
-COM-Objekt.
CString-Ausnahmebereinigung
Erklärt, dass eine explizite Bereinigung in MFC 3.0 und höher nicht mehr notwendig ist.
Übergeben von CString-Argumenten
Erläutert das Übergeben von Objekten CString
an Funktionen und das Zurückgeben von CString
Objekten aus Funktionen.
Unicode- und Multibyte-Zeichensatzunterstützung (MBCS)
Beschreibt, wie MFC für Unicode- und MBCS-Unterstützung aktiviert wird.
Verweis
CStringT
Bietet Referenzinformationen zur CStringT
-Klasse.
CSimpleStringT
Klasse
Bietet Referenzinformationen zur CSimpleStringT
-Klasse.
Verwandte Abschnitte
Zeichenfolgen (ATL/MFC)
Enthält Links zu Themen, in denen verschiedene Methoden zum Verwalten von Zeichenfolgendaten beschrieben werden.