MISRA C++:2008 Rule 6-6-5

Функция должна иметь одну точку выхода в конце функции

Описание

Определение правила

Функция должна иметь одну точку выхода в конце функции.

Объяснение

Это правило требует, чтобы return оператор должен происходить как последний оператор в теле функции. В противном случае могут возникнуть следующие проблемы:

  • Код, следующий за return оператор может быть непреднамеренно опущен.

  • Если функция, которая изменяет некоторые из ее аргументов, имеет раннее return операторы, при чтении кода не сразу ясно, какие изменения на самом деле происходят.

Реализация Polyspace

Шашка помечает такие ситуации:

  • Функция имеет несколько return оператор.

  • A, не void функция имеет одну return оператор, кроме return оператор не является последним оператором в функции.

A void функция не должна иметь return оператор. Если a return оператор существует, он не должен быть последним оператором в функции.

Поиск и устранение проблем

Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».

Проверяйте информацию

Группа: Операторы
Категория: Требуемая
Введенный в R2013b