Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
Код в заголовочных файлах (.h
или .hpp
в C++) не размещают по следующим причинам:
Нарушение принципа одного определения (One Definition Rule - ODR). При включении заголовочного файла несколькими .cpp
файлами, содержащийся в нем исполняемый код будет определен более одного раза, что приведет к ошибке линковки (multiple definition). Исключение – inline
функции и шаблоны классов/функций, которые должны быть определены в каждом модуле трансляции, где они используются.
cpp
Увеличение времени компиляции. При каждом включении заголовочного файла, компилятор заново обрабатывает его содержимое. Размещение кода в заг
Код в заголовочных файлах (.h
или .hpp
в C++) не размещают по следующим причинам:
Нарушение принципа одного определения (One Definition Rule - ODR). При включении заголовочного файла несколькими .cpp
файлами, содержащийся в нем исполняемый код будет определен более одного раза, что приведет к ошибке линковки (multiple definition). Исключение – inline
функции и шаблоны классов/функций, которые должны быть определены в каждом модуле трансляции, где они используются.
cpp
Увеличение времени компиляции. При каждом включении заголовочного файла, компилятор заново обрабатывает его содержимое. Размещение кода в заг
Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.