Share via


コンパイラの警告 (レベル 3、オフ) C4165

'HRESULT' は 'bool' に変換されています。これが必要ですか?

ステートメントで if an HRESULT を使用すると、HRESULT変数HRESULTを明示的にテストしない限り、変数は a bool に変換されます。

警告 C4165 は既定でオフになっています。 詳細については、「既定で無効になっているコンパイラ警告」を参照してください。

次の例では C4165 が生成されます。

// C4165.cpp
// compile with: /W3
#include <windows.h>
#pragma warning(3:4165)

extern HRESULT hr;
int main() {
   if (hr) {
   // try either of the following ...
   // if (FAILED(hr)) { // C4165 expected
   // if (hr != S_OK) {
   }
}