Gestione della memoria con CStringT
La classe CStringT è una classe modello usata per modificare le stringhe di caratteri a lunghezza variabile. La memoria per contenere queste stringhe viene allocata e rilasciata tramite un oggetto di gestione di stringhe, associato a ogni istanza di CStringT
. MFC e ATL forniscono istanze predefinite di CStringT
, denominate CString
, CStringA
e CStringW
, che modificano stringhe di tipi di caratteri diversi. Questi tipi di carattere sono di tipo TCHAR, char
e wchar_t
, rispettivamente. Questi tipi di stringa predefiniti usano un gestore di stringhe che alloca memoria dall'heap del processo (in ATL) o dall'heap CRT (in MFC). Per le applicazioni tipiche, questo schema di allocazione di memoria è sufficiente. Tuttavia, per il codice che usa a elevato utilizzo di stringhe (o codice multithreading), le gestioni memoria predefinite potrebbero non funzionare in modo ottimale. In questo argomento viene descritto come eseguire l'override del comportamento di gestione della memoria predefinito di CStringT
, creando allocatori ottimizzati appositamente per l'attività.
Implementazione di una gestione stringhe personalizzata (metodo di base)
Implementazione di una gestione stringhe personalizzata (metodo avanzato)
CFixedStringT: esempio di gestione di stringhe personalizzate