CString

CString verfügt nicht über eine Basisklasse.

Ein CString -Objekt besteht aus einer Zeichenfolge variabler Länge. CString stellt Funktionen und Operatoren mit einer Syntax ähnlich der Basic. Verkettung und Vergleichsoperatoren, zusammen mit Vereinfachte Speicherverwaltung, machen die CString -Objekte einfacher zu verwenden als normale Zeichen-arrays.

CString basiert auf der TCHAR -Datentyp. Wenn für das Programm das Symbol _UNICODE definiert ist, wird TCHAR als Typ Wchar_t, einen 16-Bit-Zeichen-Typ definiert; Andernfalls wird es als Char, der normal 8-Bit-Zeichen-Typ definiert. Unter Unicode dann CString -Objekte 16-Bit-Zeichen bestehen. Ohne Unicode bestehen sie aus 8-Bit Char -Typ.

Wenn _UNICODEnicht verwenden, ist CString für Mehrbyte-Zeichensätzen (MBCS, auch bekannt als Doppelbyte-Zeichensätzen DBCS) aktiviert. Beachten Sie, dass für MBCS-Zeichenfolgen, CString noch zählt, gibt, manipuliert Zeichenfolgen basierend auf 8-Bit-Zeichen und die Anwendung muss interpretieren MBCS Blei und nachfolgendes Byte selbst.

CString -Objekte haben auch die folgenden Eigenschaften:

Tipp&Nbsp;  Wo möglich, reservieren Sie CString -Objekte auf dem Heap, anstatt auf dem Rahmen. Dies spart Arbeitsspeicher und vereinfacht die Parameterübergabe.

CStri&ng unterstützt Sie bei der Erhaltung der Speicherplatz dadurch, dass zwei Zeichenfolgen denselben Wert auch zu teilen den gleichen Puffer space.nbsp teilen; Jedoch, wenn Sie versuchen, den Inhalt des Puffers direkt ändern (nicht mit MFC), Sie können ändern beide Zeichenfolgen unbeabsichtigt. CString stellt zwei Memberfunktionen, CString::LockBuffer und CString::UnlockBuffer, hilft Ihnen Ihre Daten zu schützen.  Wenn Sie LockBufferaufrufen, erstellen Sie eine Kopie einer Zeichenfolge, dann legen Sie den Verweiszähler auf 1, was "den Puffer gesperrt". Während der Puffer gesperrt ist, keine andere Zeichenfolge kann die Daten in diese Zeichenfolge verweisen, und die gesperrte Zeichenfolge wird nicht einer anderen Zeichenfolge verweisen. Sperren die Zeichenfolge in Puffer, stellen Sie sicher, dass die Zeichenfolge exklusive halten die Daten intakt bleibt. Wenn Sie mit den Daten abgeschlossen haben, rufen Sie ReplaceLinesEx auf den Verweiszähler auf 1 zurückgesetzt.

Weitere Informationen finden Sie unter der Zeichenfolgen in MFC und Strings: Unicode und Multibyte Character Set (MBCS) Support Artikel im Visual C++ Programmer's Guide und String Manipulation Routinen in der Run-Time Library Reference.

# include lt;afx.h>

Klassenmember |nbsp; Hierarchiediagramm

Beispiel&Nbsp; MFC-Beispiel HELLO

Siehe auch&Nbsp;  Im Visual C++ Programmer's Guide: Strings: grundlegende CString-Operationen, Zeichenfolgen: CString Semantik, Strings: CString-Operationen im Zusammenhang mit Zeichenfolgen im C-Format, Zeichenfolgen: CString Ausnahme Cleanup, Zeichenfolgen: CString-Argumentübergabe

Index