环境 vc6.0
“Test_Proc”已经存在于“TestDlg.h”中。 #include "TestDlg.h"
在此文件中。
'Test_Proc' 是这样使用的:
HINSTANCE hInstance = (HINSTANCE)GetWindowLong(hWnd,GWL_HINSTANCE);
DialogBoxParam(hInstance, MAKEINTRESOURCE(IDD_DIALOG_PRESENTTYPE), hWnd, Test_Proc,NULL);
TestDlg.cpp
#include "TestDlg.h"
BOOL WINAPI Test_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg)
{
HANDLE_MSG(hWnd, WM_INITDIALOG, Test_OnInitDialog);
HANDLE_MSG(hWnd, WM_COMMAND, Test_OnCommand);
HANDLE_MSG(hWnd,WM_CLOSE, Test_OnClose);
}
return FALSE;
}
TestDlg.h
#ifndef _LOGIN_H
#define _LOGIN_H
#include <windows.h>
BOOL WINAPI Test_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
BOOL Test_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam);
void Test_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify);
void Test_OnClose(HWND hwnd);
#endif
错误
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\mm1\SearchMemberDlg.cpp(378) : error C2065: 'Test_Proc' : undeclared identifier
错误是有线的。任何人都有类似的经历?谢谢。
是不是vc6.0有问题?
最佳答案
SearchMemberDlg.cpp 必须 #include "TestDlg.h"
并且您应该将 TestDlg.h 中的 include guard 从 _LOGIN_H
更改为 TESTDLG_H_INCLUDED
,否则如果在 Login.h
之后包含 TestDlg.h
可能会出现问题。
关于c - 错误 C2065 : 'Test_Proc' : undeclared identifier which 'Test_Proc' already exists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22693047/