在窗口过程之外,我正在switch
使用自执行 lambdas 编写语句,如下所示:
LRESULT CALLBACK proc(HWND hWnd,UINT msg,WPARAM wp,LPARAM lp) { 开关(味精) { 案例 WM_CREATE:返回 [&](WPARAM wp, LPARAM lp) { do_something(wp, lp); 返回0; }(wp, lp); 案例 WM_SIZE:返回 [&](HWND hWnd) { do_another_thing(hWnd); 返回0; }(hWnd); } 返回 DefWindowProc(hWnd, msg, wp, lp); }
我相信编译器可以自由地按照他们想要的方式对其进行优化,但一般来说,与不使用这些 lambda 相比,编译器会为此添加很多样板代码吗?
编译器可以检测到多余的 lambda 表达式并删除它们吗?