Идентификаторы, объявленные во внутреннем осциллографе, не должны скрывать идентификатор, объявленный во внешнем осциллографе
Идентификаторы, объявленные во внутреннем осциллографе, не должны скрывать идентификатор, объявленный во внешнем осциллографе.
Правило отмечает ситуации, где то же имя идентификатора используется в двух объявлениях переменной, один во внешнем осциллографе и другом во внутреннем осциллографе.
int var; ... { ... int var; ... }
Все использование имени во внутреннем осциллографе относится к переменной, объявленной во внутреннем осциллографе. Однако разработчик или рецензент кода могут неправильно принять, что использование относится к переменной, объявленной во внешнем осциллографе.
Средство проверки правила отмечает все случаи переменного затенения включая когда:
То же имя идентификатора используется во внешнем и внутреннем именованном пространстве имен.
То же имя используется для элемента данных класса и переменной вне класса.
То же имя используется для метода в основе и производном классе.
Чтобы исключить эти случаи, переключите на более современный стандартный AUTOSAR C++ 14 и проверяйте на правило AUTOSAR C++14 Rule A2-10-1
.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: лексические соглашения |
Категория: необходимый |