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 CStringKlassen 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, CAtlStringAund 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.

Zeichenfolgen (ATL/MFC)
Enthält Links zu Themen, in denen verschiedene Methoden zum Verwalten von Zeichenfolgendaten beschrieben werden.

Zeichenfolgen (ATL/MFC)