我正在浏览许多基本 win32 对话程序的示例。他们似乎采用了这种基本模式。
class Person
{
char Name[63];
int Age;
};
BOOL CALLBACK EditDlgProc ( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
static Person* person;
switch(uMsg)
{
case WM_INITDIALOG:
person = (Person*)lParam;
return FALSE;
case WM_COMMAND:
.....
}
return FALSE;
}
我想知道为什么要让人静态?
- 这是为了效率吗?(避免每次调用都将人员分配给 lParam)
- 这是用来分享的吗?