error C2440: “初始化”: 无法从“const char [4]”转换为“ATL::CStringT<BaseType,StringTraits>”

小弟在学MFC,看的是孙鑫的视频,照上面说的编写一个在ondraw函数里面实现输出字符串。可是出现上述错误,我想大概是ANSI和UNICODE的问题,但是不知道怎么解决,... 小弟在学MFC,看的是孙鑫的视频,照上面说的编写一个在ondraw函数里面实现输出字符串。可是出现上述错误,我想大概是ANSI和UNICODE的问题,但是不知道怎么解决,向大家求教:
程序如下:
void Ctext文字输出View::OnDraw(CDC* pDC)
{
Ctext文字输出Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
// TODO: 在此处为本机数据添加绘制代码
CString str ="hao";
pDC->TextOut(2,4,str);
}
错误提示如下:error C2440: “初始化”: 无法从“const char [4]”转换为“ATL::CStringT<BaseType,StringTraits>”
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]
1> class“ATL::CStringT<BaseType,StringTraits>”的构造函数声明为“explicit”
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]
我在“hao”前加了_T又提示说不行,,

用_T(str)代替str也不行啊
展开
 我来答
魔高丈
推荐于2018-03-26 · TA获得超过9506个赞
知道大有可为答主
回答量:2066
采纳率:0%
帮助的人:3465万
展开全部
CString str =_T("hao");
pDC->TextOut(2,4,str);

这样就行了

还有以后文件名和类名或变量函数等名称最好不要用中文
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式