WIN32_LEAN_AND_MEAN
windows.h
は山のように大量のヘッダファイルをインクルードするので、コンパイルに時間がかかる。(なんでプリコンパイルヘッダとかいう仕組みがあるわけだが)
で、 WIN32_LEAN_AND_MEAN
というマクロを事前に定義しておくと、一部のヘッダを読み込まなくなり、コンパイル時間が短縮できる。が、どのヘッダが省略されるかは windows.h
を見てね、と書いてある。
なかでも commdlg.h
が読み込まれないので、 MSDN には "Declared in Commdlg.h
, include windows.h
" って書いてあるが、自分でインクルードしないとエラーに見舞われる。
あと、このマクロに関連した話題として、 C++Builder 5 の NO_WIN32_LEAN_AND_MEAN
話がある。