编译器警告(等级 3,关闭)C4165
“HRESULT
”正在转换为“bool
”;是否确认要这样操作?
在 if
语句中使用 HRESULT
时,除非将该变量显式测试为 HRESULT
,否则 HRESULT
将转换为 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) {
}
}
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈