Проект не должен содержать энергонезависимые переменные POD, имеющие только одно использование
Проект не должен содержать энергонезависимые переменные POD, имеющие только одно использование.
Если вы используете энергонезависимую переменную с Простым Типом данных (int
'double'
, и т.д.), только однажды, можно заменить переменную на постоянный литерал. Ваше использование переменной указывает, что вы предназначили больше чем одно использование для той переменной и можете иметь программную ошибку в коде. Вы можете не использовать другое использование энергонезависимой переменной или неправильно использовать другие переменные в намеченных точках использования.
Средство проверки отмечает локальные и статические переменные, которые имеют функциональный осциллограф (локально статический) и осциллограф файла, которые используются только однажды. Средство проверки рассматривает const
- квалифицированные глобальные переменные без extern
спецификатор как статические переменные с осциллографом файла.
Средство проверки считает эти варианты использования как одно использование энергонезависимой переменной:
Явная инициализация с помощью постоянного литерала или возвращаемого значения функции
Присвоение
Ссылка на переменную, такую как операция чтения
Присвоение переменного адреса к указателю
Если переменный адрес присвоен указателю, средство проверки принимает, что указатель может быть разыменован позже и не отмечает переменную.
Некоторые объекты спроектированы, чтобы использоваться только однажды их семантикой. Polyspace® не отмечает одно использование этих объектов:
lock_guard
scoped_lock
shared_lock
unique_lock
thread
future
shared_future
Если вы используете нестандартные объекты, которые обеспечивают схожую функциональность как объекты в предыдущем списке, Polyspace может отметить одно использование нестандартных объектов. Выровняйте по ширине их одно использование при помощи комментариев.
Если вы ожидаете нарушение правила, но не видите его, относитесь, чтобы Диагностировать, Почему Кодирующие Стандартные Нарушения Не Появляются как ожидалось.
Группа: независимые от языка проблемы |
Категория: необходимый |