使用visual c++无法获得要编译的消息框。
这个可以用。MessageBox::Show("hello the world");
显然我不能硬编码我所有的消息,所以我想要这样的东西:
string s = "hello the world";
MessageBox::Show(s); | also tried MessageBox::Show(NULL,s);
不起作用。还尝试了:
char* test = (char*)s.c_str();
MessageBox::Show(test);
包括在我文件顶部
在谷歌搜索,在msdn上没有c++ messagebox的代码样本,我发现的大多数东西都不是visual c++的。
谢谢
发布于 2011-09-16 04:37:06
您正在使用C++/CLI语言中的托管代码。这需要对字符串使用System::String类型:
String^ s = "hello the world";
MessageBox::Show(s);
一定要确保你真的想写这样的代码。它不是标准的C++。如果你这样做了,那么一定要阅读C++/CLI书籍或教程来学习这门语言。
发布于 2011-09-16 03:28:15
我使用
} catch (Exception ^ex) {
MessageBox::Show(ex->Message);
}
也许你的字符串是错误的格式?尝试使用进行初始化
_T"My String"
或
L"My String"
以前也为我工作过。您的声明可能默认使用8位ASCII码或其他某种编码,这些编码被初始化的对象转换为某种其他类型,然后MessageBox::Show()
无法对其进行解释(或转换
https://stackoverflow.com/questions/7436296
复制相似问题