CString 語意
雖然 CString 物件是可以成長的動態物件,但它們的作用就像內建的基本類型和簡單類別一樣。 每個 CString
物件都代表唯一的值。 CString
對象應該視為實際的字串,而不是字串的指標。
您可以將一個物件指派給另一個 CString
物件。 不過,當您修改這兩 CString
個物件的其中一個時,不會修改另一個 CString
物件,如下列範例所示:
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"
請注意,這兩 CString
個物件會被視為「相等」,因為它們代表相同的字元字串。 類別 CString
會多載等號運算符 (==
) 來比較兩個 CString
物件,其值 (contents) 而不是其識別 (address)。