Gerenciamento de memória com CStringT
A classe CStringT é uma classe de modelo usada para manipular cadeias de caracteres de comprimento variável. A memória para manter essas cadeias de caracteres é alocada e liberada por meio de um objeto do gerenciador de cadeias de caracteres, associado a cada instância de CStringT
. O MFC e a ATL fornecem instanciações padrão de CStringT
, chamadas CString
, CStringA
e CStringW
, que manipulam cadeias de caracteres de diferentes tipos de caracteres. Esses caracteres são do tipo TCHAR, char
e wchar_t
, respectivamente. Esses tipos de cadeia de caracteres padrão usam um gerenciador de cadeias de caracteres que aloca memória do heap de processo (na ATL) ou do heap CRT (no MFC). Nas aplicações típicas, esse esquema de alocação de memória é suficiente. No entanto, para o código que faz uso intensivo de cadeias de caracteres (ou código multithreaded), os gerenciadores de memória padrão podem não ter um desempenho ideal. Este tópico descreve como substituir o comportamento padrão de gerenciamento de memória de CStringT
, criando alocadores especificamente otimizados para a tarefa em questão.
Implementação de um gerenciador de cadeia de caracteres personalizada (método básico)
Implementação de um gerenciador de cadeia de caracteres personalizada (método avançado)
CFixedStringT: exemplo de um gerenciador de cadeias de caracteres personalizado