exponenta event banner

Правило AUTOSAR C++ 14 A0-1-6

Не должно быть неиспользуемых описаний типов

Описание

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

Не должно быть неиспользуемых описаний типов.

Объяснение

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

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

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

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

Примеры

развернуть все

enum switchValue {low, medium, high}; //Noncompliant

void operate(int userInput) {
    switch(userInput) {
        case 0: // Turn on low setting
                 break;
        case 1: // Turn on medium setting
                 break;
        case 2: // Turn on high setting
                 break;
        default: // Return error
    }
}

В этом примере перечисляемый тип switchValue не используется. Возможно, цель состояла в том, чтобы использовать тип как switch входные данные, подобные этому.

enum switchValue {low, medium, high}; //Compliant

void operate(switchValue userInput) {
    switch(userInput) {
        case low: // Turn on low setting
                   break;
        case medium: // Turn on medium setting
                     break;
        case high: // Turn on high setting
                   break;
        default: // Return error
    }
}

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

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