Структура простого проекта
Проект представляет собой набор программных единиц – модулей.
Один из модулей, называемый главным, содержит инструкции, с которых начинается выполнение программы. Чтобы увидеть главный модуль, нужно в меню Project выбрать команду View Source. В качестве примера в листинге 2.5 приведен текст главного модуля программы "Сила тока".
Листинг 2.5. Главный модуль (Amper.cpp).
#include <vcl.h> #pragma hdrstop USEFORM("Amper_l.cpp", Forml); WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { Application › Initialize(); Application › Title = "Сила тока"; Application › CreateForm(__classid(TForml), SForml); Application › Run(); } catch (Exception Sexception) { Application › ShowException(Sexception); } catch (…) { try { throw Exception(""); } catch (Exception Sexception) { Application › ShowException(Sexception); } } return 0; }
Начинается главный модуль директивами компилятору (точнее, препроцессору). Директива #include <vci.h> информирует компилятор, что перед тем как приступить непосредственно к компиляции, в текст главного модуля нужно включить заголовочный файл библиотеки визуальных компонентов – vcl.h. Строка USEFORM("Amper_i.cpp", Form1) указывает, что в проект нужно включить файл модуля формы Amper_l.cpp, который содержит функции обработки событий для формы Form1.
Далее следует описание главной функции программы – winMain. Функция winMain инициализирует внутренние структуры программы, создает форму Form1 и запускает программу, что приводит к появлению на экране стартовой формы. Так как в проекте "Сила тока" только одна форма, то на экране именно она и появляется. Инструкция обработки исключений catch выполняется, если в программе возникает ошибка. Таким образом, главный модуль обеспечивает вывод стартовой формы программы, дальнейшее поведение которой определяют функции обработки событий стартовой формы.
Помимо главного модуля в состав проекта входят модули формы. Для каждой формы C++ Builder создает отдельный модуль, который состоит из двух файлов: заголовочного файла и файла кода (содержимое этих файлов отражается в окне редактора кода). Заголовочный файл содержит описание формы (листинг 2.6), файл кода (модуль формы) – описание (текст) функций, в том числе и обработки событий (листинг 2.7).