exponenta event banner

Правило AUTOSAR C++ 14 M6-3-1

Утверждение, образующее тело переключателя, в то время как, делать... в то время как или для оператора должно быть составным оператором

Описание

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

Утверждение, образующее тело переключателя, в то время как, делать... в то время как или для оператора должно быть составным оператором.

Объяснение

Составной оператор включается в фигурные скобки.

Если блок кода, связанный с итерацией или инструкцией выбора, не содержится в фигурных скобках, можно ошибиться в связи. Например:

  • Строку кода можно неправильно связать с итерацией или инструкцией выбора из-за ее отступа.

  • После итерации или инструкции выбора можно случайно поместить точку с запятой. Из-за точки с запятой строка, следующая за инструкцией, больше не связана с инструкцией, даже если предполагалось иное.

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

Внедрение Polyspace

Флаги средства проверки for закольцовывается, где первый маркер, следующий за for оператор не является левой фигурной скобкой, например:

for (i=init_val; i > 0; i--)
   if (arr[i] < 0)
      arr[i] = 0;
Аналогичные проверки выполняются для switch, for и do..while заявления.

Вторая строка сообщения на панели Сведения о результате указывает, какая инструкция нарушает правило. Например, в предыдущем примере вторая строка сообщения указывает, что for цикл нарушает правило.

Поиск неисправностей

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

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

Группа: выписки
Категория: Обязательно, Автоматизировано
Представлен в R2019a