vc++ classwizard "Parsing error:Number or identifier expected.Input line ....."錯誤解決

visual c++運行classwizard時,報出如題目所示的錯誤,點擊“確定”,classWizard顯示內容爲空。

引起這個錯誤的原因有:
1.消息映射的id與resource.h中的id不匹配;
2.自行添加的消息佔用了系統消息的映射位置。

對於第二種錯誤說明如下:
一個典型的類消息映射具有如下形式(mfc自動生成的代碼)

BEGIN_MESSAGE_MAP(CThunderCDlg, CDialog)
    //{{AFX_MSG_MAP(CThunderCDlg)
    ON_WM_PAINT()
    ON_WM_QUERYDRAGICON()
    ON_BN_CLICKED(IDC_NOPAD_INPUT, OnNopadInput)
    //}}AFX_MSG_MAP  
END_MESSAGE_MAP()

其中橙色雖然爲註釋代碼,但其表明其內區域爲系統消息映射部分,classwizard就是依靠這部分說明工作,如果將自定義的消息映射加入了橙色區域,就會出現題目中所述的錯誤。

正確添加自定義消息映射的位置應該爲橙色區域外,但在begin_message_mab與end_message_map之間。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章