Изучение основ интегрированной среды разработки языка программирования С++ Builder: Методические указания к лабораторной работе № 5 по дисциплине “Микропроцессорные информационно-управляющие системы и устройства железнодорожного транспорта”, страница 6

Начинается файл головного проекта строками, первый символ кото­рых #. С этого символа начинаются директивы препроцессора. Например, директива # include <vcl.h> подключает библиотеку визуальных компо­нентов.

После директив препроцессора в файле размещены предложения макросов USERES и USEFORM подключающие к проекту файлы ресур­сов и форм.

Далее расположена главная функция программы WinMain. За заго­ловком функции следует её тело, заключённое в фигурные скобки. Первый выполняемый оператор тела функции - Application->Initialize - инициа­лизирует компоненты данного приложения. Следующий оператор - Application —> CreateForm() - создаёт компоненты, расположенные на Форме (включая саму форму). Далее выполняется оператор – Application->Run(). После выполнения этого оператора программа ждёт соответствующих со­бытий, которые управляют её ходом, т.е. происходит включение програм­мы на выполнение.

Перечисленные операторы заключены в блок try (попытка выпол­нить), после которого следует блок catch (защёлка). Эта структура связана с обработкой так называемых исключений - аварийных ситуаций при ра­боте программы. Если аварийная ситуация возникает, то выполняются операторы в блоке catch.

Последним оператором тела функции WinMain является оператор return 0 (возврат), завершающий проект с кодом завершения 0.

Все описанные выше операторы головного файла проекта заносятся в него автоматически в процессе проектирования приложения. Имя голов­ному файлу проекта С++ Builder 5 дает по умолчанию: для первого проек­та - "Project1 .срр", для второго - "Project2.срр" и т. д.

5.2. Структуразаголовочногофайламодуля

Заголовочный файл содержит объявления классов, функций, пере­менных и т.д. Стандартное расширение файлов - .h. Чтобы увидеть код за­головочного файла, необходимо находиться в окне Редактора кода ИСР на странице с текстом файла реализации. Далее следует щёлкнуть в окне файла реализации правой кнопкой мыши на свободном месте текста файла и выбрать из всплывающего меню команду Open Source/Header File. На рис. 12 показан заголовочный файл модуля.

Заголовочный файл начинается с директив препроцессора. После директив препроцессора следует описание класса формы. Имя класса формы – TForm1. Класс содержит три раздела:

- published (открытый) - раздел, содержащий объявления размещён­ных на форме компонентов и функций обработчиков событий, вызывае­мых соответствующими компонентами;

private (закрытый) - раздел, содержащий объявления типов пере­менных, функций, включаемых в класс формы, но недоступных для дру­гих модулей;

public (открытый) - раздел, содержащий объявления типов перемен­ных, функций, включаемых в класс формы и доступных для других моду­лей; в этом же разделе всегда объявляется функция конструктора Формы.

Unit1.h                                              24.04.03                                                          19:04:42

1:

2: //                       Заголовочный файл

3: //--------------------------------------------------------------------------------------------------------------------------

4: #ifndef Unit1H // директива условной компиляции препроцессора

5: #define             // директива создания символьной константы препроцессора

6: //--------------------------------------------------------------------------------------------------------------------------

7: #include <Classes.hpp>     // директивы препроцессора, подключающиеся копии файлов,

8: # include <Controls.hpp> // в которых описаны компоненты, переменные, константы,

9: # include <StdCtrls.hhp> // функции, используемые в данном модуле

10: # include <Forms.hhp>

11: # include <ExtCtrls.hpp> // --------||--------||--------||--------||--------||--------||--------||--------|| --------||--------

12: //--------------------------------------------------------------------------------------------------------------------------