请问为什么CString型有时可以直接+连接,有时却报错C2678 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CString只重载了以下的+运算,如果类型都不符合的话,就报C2678错误了。CString AFXAPI operator+(const CString& string1, const CString& string2)CString AFXAPI operator+(const CString& string, LPCTSTR lpsz)CString AFXAPI operator+(LPCTSTR lpsz, const CString& string) CString 型和 char* 类型的相互转化 这是初学者使用 CString 时最常见的问题。有了 C++ 的帮助,很多问题你不需要深入的去考虑它,直接拿来用就行了,但是如果你不能深入了解它的运行机制,又会有很多问题让你迷惑,特别是有些看起来没有问题的代码,却偏偏不能正常工作。比如,你会奇怪为什么不能写向下面这样的代码呢:CString graycat = "Gray" + "Cat";或者这样:CString graycat("Gray" + "Cat"); 事实上,编译器将抱怨上面的这些尝试。为什么呢?因为针对CString 和 LPCTSTR数据类型的各种各样的组合,“ +” 运算符 被定义成一个重载操作符。而不是两个 LPCTSTR 数据类型,它是底层数据类型。你不能对基本数据(如 int、char 或者 char*)类型重载 C++ 的运算符。你可以象下面这样做:CString graycat = CString("Gray") + CString("Cat");或者这样:CString graycat = CString("Gray") + "Cat";研究一番就会发现:“ +”总是使用在至少有一个 CString 对象和一个 LPCSTR 的场合。注意,编写有 Unicode 意识的代码总是一件好事,比如:CString graycat = CString(_T("Gray")) + _T("Cat");这将使得你的代码可以直接移植。-------------------纯洁的分割线------------------------以上摘自vc知识库的文章CString 操作指南原著:Joseph M. Newcomer翻译:littleloach原文出处:codeproject:CString Management 能够实现将一个字符串拷贝到另外一个字符串的指定位置吗? 【【【【怎样绘制MFC控件的皮肤,例listbox.listcontrol】】】】 对话框被其他窗体挡住后,在切换回来时响应的时哪个函数啊.. 如果改变access中表的名称 求DMA的方法!!!!! 免去Kevin_qing、panda_w的大版主职位 切换的试图为什么显示不了? 多线程与COM Interface的问题求教!高手救命!!! 怎么得到目录名? MFC的cTreeCtrl控件 字符串赋值的疑惑 CSocket对象可以把其指针作为参数传给线程函数,在线程函数中使用该指针来收发数据吗?
CString AFXAPI operator+(const CString& string, LPCTSTR lpsz)
CString AFXAPI operator+(LPCTSTR lpsz, const CString& string)
比如,你会奇怪为什么不能写向下面这样的代码呢:CString graycat = "Gray" + "Cat";
或者这样:CString graycat("Gray" + "Cat");
事实上,编译器将抱怨上面的这些尝试。为什么呢?因为针对CString 和 LPCTSTR数据类型的各种各样的组合,“ +” 运算符 被定义成一个重载操作符。而不是两个 LPCTSTR 数据类型,它是底层数据类型。你不能对基本数据(如 int、char 或者 char*)类型重载 C++ 的运算符。你可以象下面这样做:CString graycat = CString("Gray") + CString("Cat");
或者这样:CString graycat = CString("Gray") + "Cat";
研究一番就会发现:“ +”总是使用在至少有一个 CString 对象和一个 LPCSTR 的场合。注意,编写有 Unicode 意识的代码总是一件好事,比如:CString graycat = CString(_T("Gray")) + _T("Cat");
这将使得你的代码可以直接移植。
-------------------纯洁的分割线------------------------
以上摘自vc知识库的文章
CString 操作指南
原著:Joseph M. Newcomer翻译:littleloach原文出处:codeproject:CString Management