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 |