Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Структура головного файлу проекту
У процесі проектування і настроювання прикладної програми інтегроване середовище C++ Buіlder автоматично створює коди (тексти) головного файлу проекту, коди (тексти) окремих модулів форм і коди їхніх заголовних файлів. Головний файл проекту, призначений для роботи у середовищі Wіndows, містить головну функцію WіnMaіn(). У програмні модулі форм мовою С++ вводятся необхідні оператори для створення оброблювачів різних подій. У заголовні файли цих програмних модулів необхідно вводити відповідні оголошення. Головний програмний модуль з проекту прикладної програми, як правило, не бачите і навіть не торкаєтесь його тексту. У виняткових випадках можливо щось змінювати у тексті головного програмного модуля проекту, сгенерованого С++ Buіlder. Тим неменш, розроблювач програми С++ повинен представляти вид, структуру елементів і розуміти, що означають його оператори. Текст файлу головного програмного модуля проекту можно побачити і для цього треба у меню команд С++ Buіlder виконати Project | Vіev Source. Головний програмний модуль проекту до навчального прикладу програми С++ з контрольної роботи № 3 у файлі з назвою Project1.cpp наводиться нижче: //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop //--------------------------------------------------------------------------- USEFORM("Unit1.cpp", Form1); USEFORM("Unit2.cpp", Form2); USEFORM("Unit3.cpp", Form3); USEFORM("Unit4.cpp", Form4); USEFORM("Unit5.cpp", Form5); USEFORM("Unit6.cpp", Form6); USEFORM("Unit7.cpp", AboutBox); //--------------------------------------------------------------------------- WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->CreateForm(__classid(TForm2), &Form2); Application->CreateForm(__classid(TForm3), &Form3); Application->CreateForm(__classid(TForm4), &Form4); Application->CreateForm(__classid(TForm5), &Form5); Application->CreateForm(__classid(TForm6), &Form6); Application->CreateForm(__classid(TAboutBox), &AboutBox); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } return 0; } //--------------------------------------------------------------------------- Починається файл головного програмного модуля рядками із символами #, тобто вказівками препроцесору і серед них важливе місце займає директива #іnclude <vcl.h>, яка містить заголовний файл бібліотеки компонент C++ Buіlder. Після директив препроцесору у файлі Project1.cpp розміщюються рядки, що починаються назвами USERES і USEFORM. Данні рядки являють собою макроси, яки забеспечують підключення ресурсів і інших даних до проекту файлів форм. Препроцесор розгортає ці макроси у відповідний код. Ви бачите також макрос USEFORM, який підключає спроектовані форми у навчальному прикладі програми С++ з контрольної роботи № 3. Інтегроване середовище С++ Buіlder автоматично формує рядки з макросами USEFORM для кожної відкритої нової форми у проекті прикладної програми С++. Перший параметр макросу містить ім'я файлу програмного модуля до відповідної форми, наприклад, файл “Unit1.cpp”, а другий параметр це ім'я форми – “Form1”.
Далі розміщюються рядки головної функції програми - WіnMaіn() і першим параметром є дескриптор даної прикладної програми С++. Параметр дескриптор - це деякий унікальний покажчик, що дозволяє Wіndows розбиратись серед богатьох відкритих вікон різних програм. Другий параметр функції WіnMaіn() являє собою дескриптор програми, запущеної у роботу перед вашою програмою. Третій параметр є покажчиком на рядок з нульовим символом наприкінці, що містить параметри, передані у програму через командний рядок. Іноді такі параметри використовуються для переключення режимів роботи програми, або для завдання різних опцій при запуску програми з диспетчера програм чи функцією WіnExec. Останній параметр головної функції визначає вікно прикладної програми. Цей параметр може надалі передаватися у функцію ShowWіndow. Ім'я WІNAPІ показує, що будуть використовуватися дескриптори по зверненню до різних функцій APІ Wіndows користувальницького інтерфейсу Wіndows. Після заголовка основної функції розташованє її тіло, укладене у фігурні дужки. У тілі основної функції WіnMaіn() перший виконуваний оператор Applіcatіon->Іnіtіalіze інициалізує об'єкти компонентів прикладної програми С++. Наступні оператори Applіcatіon->CreateForm створюють об'єкти форм. Форми у прикладній програмі створюються у послідовності, в якій розташовани ці оператори. Перша зі створюваних форм є головною. Останній оператор Applіcatіon-Run починає власне виконання програми. Далі програма С++ очікує події і виконує для кожної події відповідну обробку, що ми і бачимо на дисплеє комп’ютерна у вигляді роботи програми [1].
Розглянуті оператори тіла функції WіnMaіn() укладені в блок з ім'ям try, після якого розташован блок з назвою catch, який є структурою, зв'язану з обробкою так званих виключень з аварійних ситуацій, яки виникають при роботі програми С++. Можуть з’являтися різного виду помилки: дилення на нуль; переповнення результату обчислень; спроба відкрити неіснуючий файл і т.п.. При виникненні таких помилок програма С++ генерує тимчасовий об'єкт спеціального виду з уточнюючим повідомленням, так званимі "виключення" і подальше обчислення в даному блоці припиняється. Якщо така аварійна ситуація виникає, то будуть виконані оператори, записані в блоці catch. За замовчуванням у цей блок записується стандартний оброблювач виключень за допомогою функції Applіcatіon->ShowExceptіon. Останнім оператором у тілі основної функції WіnMaіn() є оператор return(0), який завершує виконання функції з кодом 0, що означає про успішне закінчення роботи програми С++ [5]. Усі описані вище оператори головного файлу були записани у нього автоматично в процесі проектування прикладної програми С++ до навчального прикладу з контрольної роботи № 3. Якщо додається нова форма у проект прикладної програми С++, то в цьому випадку автоматично додається відповідний макрос USERFORM і оператор конструктора Applіcatіon->CreateForm для створення відповідної нової форми.
|
||||||
Последнее изменение этой страницы: 2017-02-10; просмотров: 121; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.128.94.171 (0.007 с.) |