Поделиться через


C28650

предупреждение C28650: тип, для которого используется !0, не обрабатывает его как случай сбоя.

Возвращает значение состояния, например ! ЗНАЧЕНИЕ TRUE не совпадает с возвратом значения состояния, указывающего на сбой.

Некоторые типы данных, такие как NTSTATUS и HRESULT имеют связанные макросы, которые классифицируют значения этих типов в SUCCESS или FAILURE. Эти макросы проверяют наиболее значительный бит возвращаемого значения или значений, чтобы определить это. Таким образом, 0 и 1 классифицируются как значения SUCCESS.

Правильный способ исправить это предупреждение — вернуть правильный код ошибки вместо универсального значения, например -1.