Внешний объект или функция должны быть объявлены однажды в одном и только одном файле
Внешний объект или функция должны быть объявлены однажды в одном и только одном файле.
Если вы объявляете идентификатор в заголовочном файле, можно включать заголовочный файл в любой модуль перевода, где идентификатор задается или используется. Таким образом вы гарантируете непротиворечивость между:
Объявление и определение.
Объявления в различных модулях перевода.
Правило осуществляет практику объявления внешних объектов или функций в заголовочных файлах.
Средство проверки правила проверяет только явные объявления extern (предварительные определения проигнорированы). Средство проверки отмечает переменные, или функции объявили extern в незаголовочном файле.
Polyspace® Bug Finder™ и Polyspace Code Prover™ проверяют это правило кодирования по-другому. Исследования могут привести к различным результатам.
Объектный object_name имеет внешние объявления в нескольких файлах.
Функциональный function_name имеет внешние объявления в нескольких файлах.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
| Группа: объявления и определения |
| Категория: необходимый |
| Категория AGC: консультация |
| Язык: C90, C99 |