CString

CString nie klasy podstawowej.

Obiekt CString składa się z sekwencji o zmiennej długości znaków. CString zapewnia funkcje i operatory składnia podobna do tej z Basic. Konkatenacja i operatorów porównania, wraz z pamięci uproszczone zarządzanie, uczynić obiekty CString łatwiejszy w użyciu niż znaków zwykłych tablic.

CString jest oparte na typie danych TCHAR . Jeśli symbol _UNICODE jest zdefiniowany dla programu, TCHAR jest zdefiniowany jako typ wchar_t, typu znaków 16-bitowych; w przeciwnym przypadku jest ona zdefiniowana jako char, typu zwykłych znaków 8-bitowych. W Unicode następnie CString obiekty składają znaków 16-bitowych. Bez Unicode są one składający się z 8-bitowe char typu.

Gdy nie przy użyciu _UNICODE, CString jest włączona dla znaków wielobajtowych zestawów (MBCS, zestawów znany również jako znaków dwubajtowych znaków DBCS). Należy zauważyć, że MBCS ciągi, CString nadal zlicza zwraca i operuje ciągi oparte na 8-bitowe znaki i aplikacji należy interpretować MBCS ołowiu i trail bajtów, sam.

CString obiekty mają również następujące cechy:

Porada   W przypadku gdy jest to możliwe, należy przydzielić obiektów CString w ramce, raczej niż na stercie. Powoduje to zapisanie pamięci i upraszcza parametr przekazując.

CStri&ng pomaga w oszczędność miejsca w pamięci umożliwiając dwóch ciągów współużytkowanie tej samej wartości również udostępnienie tego samego space.nbsp buforu; Jednakże jeżeli próby bezpośrednio zmienić zawartość buforu (nie używając MFC), można zmienić zarówno ciągi przypadkowo. CString oferuje dwie funkcje składowe, CString::LockBuffer i CString::UnlockBuffer, aby pomóc chronić dane.  Podczas wywoływania LockBuffer, utwórz kopię ciąg, następnie ustawić licznika odwołań równą -1, którego "blokuje" bufor. Podczas gdy bufor jest zablokowany, nie inne ciągi może odwołują się do danych w ciągu, a zablokowane ciąg nie będzie odwołania do innego ciągu. Blokowanie ciąg w buforze, można zapewnić, że posiadają wyłączne ciąg danych pozostaną nienaruszone. Po zakończeniu z danymi, wywołanie UnlockBuffer do resetowania licznika odwołań do 1.

Aby uzyskać więcej informacji, zobacz ciągów w MFC i ciągów: Unicode i ustawić znaki wielobajtowe (MBCS) wsparcie artykuły w Visual C++ Programmer's Guide i Ciąg manipulacji procedur w Run-Time Library Reference.

# include lt;afx.h>

Członkowie klasy |nbsp; Wykres hierarchii

Próbki  MFC próbki HELLO

Zobacz też   W Visual C++ Programmer's Guide: ciągi: podstawowe operacje CString, ciągi: semantyki CString, ciągi: CString działań odnoszących się do C-Style ciągi, ciągi: oczyszczanie wyjątek CString, ciągi: przekazywania argumentu CString

Index