MISRA C++:2008 Rule 0-1-5

Проект не должен содержать неиспользованных объявлений типов

Описание

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

Проект не должен содержать неиспользованных объявлений типа.

Объяснение

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

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

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

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

Примеры

расширить все

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
    }
}

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

Группа: Языковые независимые вопросы
Категория: Требуемая
Введенный в R2018a