catch оператор не достигнут из-за более раннего catch оператор для того же исключения
Этот дефект происходит когда catch оператор не достигнут потому что предыдущий catch оператор обрабатывает исключение.
Например, catch оператор принимает объект класса my_exception и более поздний catch оператор принимает одно из следующего:
Объект my_exception класс.
Объект класса выведен из my_exception класс.
Поскольку catch оператор не достигнут, это - эффективно мертвый код.
Одна возможная фиксация должна удалить избыточный catch оператор.
Другой возможная фиксация должен инвертировать порядок catch операторы. Поместите catch оператор, который принимает исключение производного класса перед catch оператор, который принимает исключение базового класса.
| Группа: исключение C++ |
| Язык: C++ |
| Значение по умолчанию: На для рукописного кода, прочь для сгенерированного кода |
Синтаксис командной строки: EXCP_HANDLER_HIDDEN |
| Удар: носитель |
| ID CWE: 755 |