我的工作我的代碼在C++中,但是當我輸入代碼的一個消息顯示誤差的MessageBox C++
MessageBox::Show(NMessage1);
我得到的是錯誤 「‘MessageBoxA’:不是類或「 和 ‘命名空間名稱‘秀’:找不到標識符’
我的工作我的代碼在C++中,但是當我輸入代碼的一個消息顯示誤差的MessageBox C++
MessageBox::Show(NMessage1);
我得到的是錯誤 「‘MessageBoxA’:不是類或「 和 ‘命名空間名稱‘秀’:找不到標識符’
MessageBox::Show
不是Windows API,它只是MessageBox
或::MesssageBox
,你將需要#include <windows.h>
。
你給你的類名MessageBox命名了嗎?這也是一個Windows API函數(請參閱MSDN)。當你使用Unicode構建時,我認爲有一個#define
可以製作MessageBoxA。
如果您只是想調用Windows API,請參閱鏈接。如果這是你的班級使用不同的名字。
假設你正在嘗試使用.NET MessageBox::Show
在C++/CLI
你是否有這個在你的代碼
#using <System.Windows.Forms.dll>
using namespace System::Windows::Forms;
如果沒有,添加它,這就是的MessageBox ::展會定義。
如果您已經擁有它,那麼您的問題可能是因爲您還包括windows.h
。
windows.h
#define
s MessageBox
to MessageBoxA
in non UNICODE build。因此,您無法使用System.Windows.Forms
的MessageBox
。 undef
ing MessageBox
宏將解決您的問題。
執行以下
#undef MessageBox
的地方之後,你#include <windows.h>