Condividi tramite


Using CString

Gli argomenti di questa sezione descrivono come programmare con CString. Per la documentazione di riferimento sulla classe CString, vedere la documentazione per CStringT.

Per usare CString, includere l'intestazione atlstr.h.

Le classi CString, CStringA e CStringW sono specializzazioni di un modello di classe denominato CStringT basato sul tipo di dati di tipo carattere supportato.

Un oggetto CStringW contiene il tipo wchar_t e supporta le stringhe Unicode. Un oggetto CStringA contiene il tipo char e supporta le stringhe a byte singolo e multibyte (MBCS). Un oggetto CString supporta il tipo char o wchar_t, a seconda del fatto che in fase di compilazione venga definito il simbolo MBCS o UNICODE.

Un oggetto CString mantiene i dati di tipo carattere in un oggetto CStringData. CString accetta stringhe in formato C con terminazione null, ma non conserva il carattere null nei dati di tipo carattere archiviati. CString tiene invece traccia della lunghezza della stringa. CString fornisce un terminatore null quando esporta una stringa in formato C. È possibile inserire un valore null in un oggetto CString, ma potrebbe provocare risultati imprevisti.

Il set di classi stringa seguente può essere usato senza collegare una libreria MFC, con o senza il supporto della libreria run-time C: CAtlString, CAtlStringA e CAtlStringW.

CString viene usato nei progetti nativi. Per i progetti in codice gestito (C++/CLI), usare System::String.

Per aggiungere funzionalità rispetto a quelle offerte da CString, CStringA o CStringW, creare una sottoclasse di CStringT contenente le funzionalità aggiuntive.

Il codice seguente illustra come creare un oggetto CString e stamparlo in un output standard:

#include <atlstr.h>

int main() {
    CString aCString = CString(_T("A string"));
    _tprintf(_T("%s"), (LPCTSTR) aCString);
}

In questa sezione

Riferimenti

  • CStringT
    Fornisce informazioni di riferimento sulla classe CStringT.

  • CSimpleStringT Class
    Fornisce informazioni di riferimento sulla classe CSimpleStringT.

Sezioni correlate

Strings (ATL/MFC)