#includeヘッダーファイルの順序が原因で発生するコンパイルの問題

 

ある日、サードパーティのライブラリを呼び出すときに次の問題が発生しました。

サードパーティのソフトウェアベンダーは、HMODULEタイプのウィンドウを使用するヘッダーファイルxxx.hを提供していますが、xxx.hにwondows.hは含まれていません。

同時に、xxx.hを使用するサードパーティソフトウェアのデモが提供されます。

#include <windows.h> ---line 1
#include <xxx.h>     ---line 2


HMODULE var;

ただし、上記のline1とline2を呼び出すと、xxx.hに間違ったHMODULEタイプが表示されます!-コンパイラーが前処理する前にwindows.hを展開する必要があります。使う!

 

----このタイプのヘッダー設計を避ける必要があります!

オリジナルの記事を374件公開 95件の賞賛 26万回以上

おすすめ

転載: blog.csdn.net/qq_35865125/article/details/104885951