Структуру программы на языке С++ можно рассматривать в двух вариантах: структура, как иерархия компонентов, необходимых для работы приложения, и структура файлов исходного кода.
Иерархическая структура компонентов в Visual C++:
Глобальный контейнером, то есть компонентом, включающим в себя другие компоненты, является Решение. Решение может содержать один или несколько проектов.
Проекты являются не зависимыми компонентами. Они имеют собственную структуру, состоящую из четырех основных каталогов:
Внешние зависимости – содержит ссылки на все модули, которые использует программа.
Заголовочные файлы – содержит файлы кода С++ (в файлах данного каталога принято описывать различные компоненты).
Заголовочные файлы – содержит файлы кода С++ (в файлах данного каталога принято выполнять действия над компонентами).
Файлы ресурсов – содержит файлы, не относящиеся к С++, однако необходимые для работы программы. Например, мультимедийные файлы.
В Visual Studio решения и проекты имеют внешнюю структуру на жестком диске. Например, исполнительный файл находится в папке Debug каталога решения, файлы исходного кода можно найти в каталоге проекта.
Структура файла кода:
Файл кода на языке программирования C++ состоит из функций. В них и содержатся элементы. Один проект может содержать неограниченное число пользовательских функций, и одну основную функцию. Основная функция исполняется сразу после запуска программы, остальные – по необходимости.
Помимо функций файл кода может содержать директивы препроцессора. Это команды, которые исполняются в начале компиляции.