auto enumFunc = [] (HWND hwnd, LPARAM lparam) { wstring sbuf(1024,L'\0'); if(GetWindowText(hwnd, &sbuf[0], 1024)>0) { MessageBox(0,sbuf.c_str(),L"enum",0); } return TRUE; }; EnumWindows(static_cast<BOOL (__stdcall *)(HWND,LPARAM)>(enumFunc) , 0);
[&](){} 这样的引用只能 是cdcel调用,不能转为stdcall