在mfc dll中为什么CString str="aa";这种写法报错,只能使用CString str;str="aa";呢?

 我来答
liuhua1433
2011-12-27 · TA获得超过173个赞
知道答主
回答量:79
采纳率:0%
帮助的人:48.4万
展开全部
你使用了UNICODE项目,如果一定要写成一行,可以这样写:
CString str=_T("aaa");或者CString str=L"aaa";或者CString str("aaaa");
为什么这样,我也不知道.
以前我以为是CString重载了operator=(const char*)操作却没有定义CString(const char*),但似乎不能这么简单的理解.
CString类型在内部是这么定义的:
typedef ATL::CStringT< TCHAR, StrTraitMFC_DLL< TCHAR > > CString;
你如果想弄明白这个问题要去了解下类模板
xiaobin0602
2011-12-27 · 超过31用户采纳过TA的回答
知道答主
回答量:159
采纳率:0%
帮助的人:104万
展开全部
CString str="aa";是简便写法,在VC MFC中已经集成化了,就等于后者,在C语言中这样就不行,dll编写环境没有那么多集成的东西,按照C写就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhdm123
2011-12-27 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:129万
展开全部
dll里面怎么写如CString的对象 求指导 我一直没写出来。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
friendwaha
2011-12-27
知道答主
回答量:8
采纳率:0%
帮助的人:4万
展开全部
CString是个类,不是变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式