Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Mimo że obiekty CString są obiektami dynamicznymi, które mogą rosnąć, działają jak wbudowane typy pierwotne i proste klasy. Każdy CString obiekt reprezentuje unikatową wartość. CString obiekty powinny być uważane za rzeczywiste ciągi, a nie jako wskaźniki do ciągów.
Można przypisać jeden CString obiekt do innego. Jednak podczas modyfikowania jednego z dwóch CString obiektów drugi CString obiekt nie jest modyfikowany, jak pokazano w poniższym przykładzie:
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"
Zwróć uwagę, że w przykładzie dwa CString obiekty są traktowane jako "równe", ponieważ reprezentują one ten sam ciąg znaków. Klasa CString przeciąża operatora równości (==), aby porównać dwa CString obiekty na podstawie ich wartości (zawartości), a nie ich tożsamości (adresu).