В С++ обычно прототипы функций помещаются в отдельный файл, чтобы не загромождать их кодом основную программу. Этот файл называют включаемым, подключаемым или заголовочным. Затем (при необходимости) этот файл подключают к исходному файлу на С++.
При компиляции препроцессор вставляет содержимое заголовочного файла в код программы в том месте, где встречает директиву #include. Пример:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, World!" << endl;
return 0;
}
В данном примере нам нужно подключить файл iostream, иначе не будет работать cout, и компилятор будет выдавать ошибку.
Директива #include требует от препроцессора заменить её содержимым указанного файла. Эта директива не похожа на обычные инструкции С++, потому что она обрабатывается ДО компиляции программы. То есть сначала собирается в кучу весь код, в том числе и код подключаемых файлов, а потом уже выполняется компиляция.
Директива должна располагаться на одной строке в файле исходного кода. То есть вот так делать нельзя:
#include
<iostream>
Компилятор в этом случае выдаст ошибку.
Директива начинается с символа #. Между этим символом и именем директивы может быть пробел, хотя это не приветствуется.
Имя файла может заключаться либо в угловые скобки (как в примере выше), либо в кавычки:
#include "modul.h"
Угловые скобки обычно используются для библиотечных файлов С++, а кавычки - для пользовательских файлов.
Но для библиотек это не обязательное требование. Вы можете поместить имя стандартного файла как в угловые скобки, так и в кавычки. А вот если вы поместите свой файл в угловые скобки, то получите ошибку от компилятора.
Также сложилось исторически, что многие годы программисты использовали расширение .h для заголовочных файлов (от header - заголовок). Однако современными стандартами это требование отменено. Но традиции лучше чтить )))
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.