CString::CString

CString( );
CString( const CString& stringSrc );
  throw( CMemoryException );
CString( TCHAR ch, int nRepeat = 1 );
  throw( CMemoryException );
CString( LPCTSTR lpch, int nLength );
  throw( CMemoryException );
CString( const unsigned char* psz );
  throw( CMemoryException );
CString( LPCWSTR lpsz );
  throw( CMemoryException );
CString( LPCSTR lpsz );
  throw( CMemoryException );

参数:
stringSrc一个已经存在的CString对象,它要被拷贝到此CString对象中。
ch要被重复nRepeat次的单个字符。
nRepeat要对ch重复的次数。
lpch一个指向字符数组的指针,该字符数组的长度是nLength,不包括结尾的空字符。
nLengthpch中的字符的个数。
psz一个要被拷贝到此CString对象中去的以空字符结尾的字符串。
lpsz一个要被拷贝到此CString对象中去的以空字符结尾的字符串。

说明:
这些构造函数的每一个都用来以指定的数据初始化一个新的CString对象。
由于构造函数是将输入数据拷贝到新分配的存储区,所以你应该注意可能会导致的内存异常。注意,这些构造函数中的某些函数的作用相当于一个转换函数。这就允许你使用替换物,例如在一个需要CString对象的地方用一个LPTSTR来代替。
此构造函数的某几种形式具有特殊的目的:
·CString( LPCSTR lpsz )从一个ANSI字符串构造一个Unicode CString。你可以象下面的例子那样用这个函数来加载一个字符串资源。
·CString( LPCWSTR lpsz )从一个Unicode字符串构造一个CString。
·CString( const unsigned char* psz )从一个指向unsigned char的指针构造一个CString。
想了解更多的信息,请参阅“Visual C++ 程序员指南”随机文中的“String:CString Exception Cleanup ”一节。

示例:下面的例子说明了如何使用String::CString。
// CString::CString示例:
CString s1; // 空字符串
CString s2( "cat" ); // 从一个文字的C字符串
CString s3 = s2; // 拷贝构造函数
CString s4( s2 + " " + s3 ); // 从一个字符串表达式
CString s5( 'x' ); // s5 = "x"
CString s6( 'x', 6 ); // s6 = "xxxxxx"
CString s7((LPCSTR)ID_FILE_NEW); // s7 = "Create a new document"
CString city = "Philadelphia"; // 不是赋值操作符

请参阅:CString::operator =