Каждая функция, определяемая в анонимном пространстве имен, или статическая функция с внутренним рычажным устройством или функция члена парламента, не занимающего официального поста должны использоваться
Каждая функция, определяемая в анонимном пространстве имен, или статическая функция с внутренним рычажным устройством или функция члена парламента, не занимающего официального поста должны использоваться.
Функции, определяемые в анонимном пространстве имен и статических функциях с внутренним рычажным устройством являются вызываемыми только в единице компиляции, в которой они заданы. Точно так же функции члена парламента, не занимающего официального поста являются вызываемыми только в реализации класса, которой они принадлежат. В обоих этих случаях такие функции предназначаются, чтобы использоваться исключительно в текущем исходном коде а не во внешнем коде, который интегрирован позже в проект. Не использование таких функций указывает на плохую разработку ПО или недостающую логику в текущей кодовой базе.
Примечание
Вызов явной функции в исходном коде достаточен, чтобы удовлетворить этому правилу, даже если вызов не достижим во время выполнения. Отдельное правило, M0-1-1, проверяет на все недостижимые случаи кода.
Если функция, определяемая в вашем исходном коде не называется явным образом и принадлежит одной из этих категорий, средство проверки отмечает функциональное определение:
Функции, определяемые в анонимном пространстве имен
Статические функции с внутренним рычажным устройством
Член парламента, не занимающий официального поста функционирует, которые заданы вне определения класса
Средство проверки не отмечает невостребованную функцию члена парламента, не занимающего официального поста, которая задана в определении класса.
Средство проверки не отмечает функции члена парламента, не занимающего официального поста, которые заданы вне определения класса в Polyspace® по умолчанию как Вы Анализ кода. Смотрите Средства проверки, Деактивированные в Polyspace, когда Вы Кодируете Анализ По умолчанию (Polyspace Bug Finder Access).
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: Независимые от языка проблемы |
Категория: необходимый, автоматизированный |