visual studio 2008 中出现的问题
void Cex07aView::OnDraw(CDC* pDC)
{
Cex07aDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
pDC->TextOut(0, 0, "Press the left mouse button here.");
// TODO: 在此处为本机数据添加绘制代码
}
在这个函数运行中中提示有错误,是:
error C2664: “BOOL CDC::TextOutW(int,int,const CString &)”: 不能将参数 3 从“const char [34]”转换为“const CString &”
这个函数是我直接从参考书上敲进去的,这个错误是什么意思呢?应该怎么改正才能正确显示呢?
[解决办法]
由于你的字符类型而导致的。你的字符串是char,而你使用的是unicode,所以使用的是w_char。你需要把你的字符换成w_char。试试下面的。
pDC->TextOut(0, 0, _T("Press the left mouse button here."));
[解决办法]
加上_T()试一下.
[解决办法]
这是08、10和6.0使用的字符不一样,想深入了解的话可以去搜索多字符方面知识补充一下,对于你提到的问题只要把
pDC->TextOut(0, 0, "Press the left mouse button here.");
改为
pDC->TextOut(0, 0, L"Press the left mouse button here.");
应该就没问题了。