猿问

在VC++语言中,MessageBox函数怎么运用?有什么特殊用法?

编译环境 VS 2005
我有一个继承自CDialog
我在类中一个成员方法内写如下代码

MessageBox("Hello Word");

编译后报错。
error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'const char [11]' to 'LPCTSTR'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

初学VC++,没想到一个消息框就给我难住了。。。
我发现这样写没问题MessageBox(TEXT("Hello Word"));
这个TEXT是什么意思呀?
这种写法似乎有些麻烦啊,大家平时弹出消息框的时候都怎么写呀?

杨魅力
浏览 373回答 3
3回答

拉莫斯之舞

应该是你创建工程的时候选择了unicode编码,所以不能直接使用"Hello world!"这样的字符串。WINNT.H头文件中定义:#ifdef UNICODE#define __TEXT(quote) L##quote#else#define __TEXT(quote) quote#endif#define TEXT(quote) __TEXT(quote)
随时随地看视频慕课网APP
我要回答