NULL не должен быть выдан явным образом
Примечание
Используйте Bug Finder вместо Code Prover для проверки правил кодирования. Поддержка кодирования правил, регистрируясь в Code Prover будет удалена в будущем релизе. См. Вопросы совместимости.
NULL не должен быть выдан явным образом.
Макро-NULL обычно используется, чтобы относиться к нулевым указателям. Compliers интерпретируют NULL как целое число с нулем значения, вместо указателя. Когда вы используете NULL явным образом в throw оператор, вы можете ожидать, что оператор повысит исключение типа указателя. throw(NULL) эквивалентно throw(0) и повышает целочисленное исключение. Это поведение может противоречить ожиданию разработчика и может привести к ошибкам, которые затрудняют, чтобы найти. Избегайте использования NULL явным образом в throw оператор.
Polyspace® отмечает throw оператор, который повышает NULL явным образом. Polyspace не отмечает оператор когда NULL повышен после броска до определенного типа или присвоения его к типу указателя.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
| Группа: Обработка исключений |
| Категория: необходимый |