似乎很简单但无法找到解决方案。
我想要这样的东西
catch (Exception^ ex)
{
MessageBoxA(NULL, ex->ToString(), "", MB_OK);
}
但它说Plattform :: string ^与LPCSTR不兼容。
答案 0 :(得分:-1)
Platform :: String是.NET类,当然与旧的char*
不兼容。
要解决此问题,您需要做两件事。
首先,将Platform::String
转换为wchar_t*
,因为它是unicode字符串。使用方法Data()
其次,使用MessageBoxW,因为我们使用的是unicode,而不是ANSI。
结果代码应如下所示:
MessageBoxW(NULL, ex->ToString()->Data(), "", MB_OK);