Partilhar via


Semântica da CString

Observação

A biblioteca Microsoft Foundation Classes (MFC) e a Active Template Library (ATL) continuam a ser suportadas. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Embora os objetos CString sejam objetos dinâmicos que podem crescer, eles funcionam como tipos primitivos incorporados e classes simples. Cada CString objeto representa um valor único. CString Os objetos devem ser pensados como as verdadeiras cadeias em vez de apontar para cadeias.

Podes atribuir um CString objeto a outro. No entanto, quando se modifica um dos dois CString objetos, o outro CString objeto não é modificado, como mostrado pelo seguinte exemplo:

CString s1, s2;
s1 = s2 = _T("hi there");

ASSERT(s1 == s2); // they are equal

s1.MakeUpper();  // Does not modify s2
ASSERT(s2[0] == _T('h')); // s2 is still "hi there"   

Note-se no exemplo que os dois CString objetos são considerados "iguais" porque representam a mesma cadeia de caracteres. A CString classe sobrecarrega o operador de igualdade (==) para comparar dois CString objetos com base no seu valor (conteúdo) em vez da sua identidade (endereço).

Consulte também

Cordas (ATL/MFC)