C++的CString类

2025-03-05 02:55:07
推荐回答(2个)
回答1:

&是取址符,这里就是取X1的地址作为参数传递给CString的构造函数。
之所以要这样传参,是CString的构造函数规定的,就跟其他函数传参一样,不过你这本身传递的并不正确。可以参考一下CString的构造函数:
CString( );

CString( const CString& stringSrc );

CString( TCHAR ch, int nRepeat = 1 );

CString( LPCTSTR lpch, int nLength );

CString( const unsigned char* psz );

CString( LPCWSTR lpsz );

CString( LPCSTR lpsz );
虽然说你这个代码传参可以参考第五个构造函数,不过代码本身是错误的,参考一下下面代码:
char *abc = "abc";
CString __CString(abc);
这里传的参数abc就是一个地址,他本身的含义跟你代码中&X1是一样的,不同的是abc指向的是一个字符串,&X1指向一个int类型的数据。

回答2:

这里的+号是经过重载的,也就是运算符重载。一般是把两个字符串进行追加,如abc和def,经过相加后成为abcdef。

enjoy!