Контролируемые исключительные ситуации, которые могли быть выданы от функции, должны быть заданы вместе с объявлением функции, и они должны быть идентичными во всех объявлениях функции и для всех его сверхнаездников
Контролируемые исключительные ситуации, которые могли быть выданы от функции, должны быть заданы вместе с объявлением функции, и они должны быть идентичными во всех объявлениях функции и для всех его сверхнаездников.
На C++ нет никаких контролируемых исключительных ситуаций, потому что компилятор не осуществляет функции, чтобы задать или обработать исключения, которые могут повысить функции. Спецификация динамического исключения формы throw(<>)
является устаревшим и подверженным ошибкам. Спецификация исключения, предписанная в стандарте C++, задает только, повышает ли функция исключение или не при помощи спецификатора noexcept
. Поскольку нет никакого официального способа объявить, какие исключения могут явиться результатом функции, стандарт AUTOSAR требует, чтобы каждое объявление функции сопровождалось комментариями что документ вручение исключения функции. Этот метод документирования исключений похож на механизм обработки исключений JAVA.
Используйте комментарии, чтобы задать список исключений, которые должен проверять инструмент статического анализа. Перед объявлениями функции используйте комментарии для документа, которые из контролируемых исключительных ситуаций ожидаются в функции.
Polyspace® повышения это средство проверки, когда любое из этих условий верно:
Функция повышает контролируемую исключительную ситуацию, но не документирует ее перед ее объявлением.
Функция не повышает все контролируемые исключительные ситуации, которые документируются в комментарии перед ее объявлением.
Функциональные документы исключение непроверенное.
Функциональные документы исключение, но не задает его.
Это средство проверки игнорирует функции члена класса, которые не вызваны в вашем коде.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
Группа: Обработка исключений |
Категория: необходимый, автоматизированный |