если я импортирую заголовочный файл, файл, содержащий определения, также будет импортирован?

#c #modularity

#c #модульность

Вопрос:

Я определил сигнатуры функций в файле .h. И определения (тело) функции в файле .cpp. Смогу ли я использовать функции, если я импортирую файл .h?

Комментарии:

1. Вы спрашиваете о import или #include ? import это новый механизм, введенный в C 20.

2. Да, это одна из основных целей заголовочных файлов (для повторного использования объявлений функций для нескольких «исходных» файлов).

3. Вы будете, при условии, что вы также предпримете соответствующие шаги при создании своей программы для связывания определений функций. Новички иногда думают, что все, что вам нужно сделать, это включить файл заголовка, но вам также нужно связать со скомпилированными определениями функций.

4. Если в заголовке нет тел функций, вы объявили (не определили ) функцию в заголовке.

5. Создание файла заголовка, как вы описали, является одним из шагов, позволяющих использовать эти функции в другом файле .cpp. Другой оставшийся шаг — связать все файлы .cpp вместе, и как именно вы это сделаете, зависит от используемой IDE / компилятора.