C2872エラー

Tweet


C2872エラー「あいまいなシンボルです」というエラーが
#include <Windows.h>
を追加したせいで発生した場合.

解決方法としてまず考えたのが
namespace Win32API {
#include <Windows.h>
}
のようにして,Windows.hで定義されている例えばDWORDを使う場合にWin32API::DWORDのように使うという方法である.
うまくいく場合もあったがうまくいかない場合もあったのでこの解決方法が最適か分からない.

他のライブラリと競合している場合,インクルードする順番を変えることで解決できる場合がある.例えば,OpenCVとWindows.hの両方を使っていることが原因の場合,OpenCVより先にWindows.hをインクルードすることで解決する.


もどる