Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Використання консольного додатку




Іншою областю використання консольного застосування є тестування нових алгоритмів. Якщо ці тестовані алгоритми не пов'язані з виводом на екран графічної інформації, використання консольного застосування є кращим виходом із створення середовища для перевірки їх функціонування. Єдина незручність, пов'язана з необхідністю включення в файл ресурсів консольного застосування строкових ресурсів, до яких звертається користувальницька бібліотека програм, може бути легко усунуто використанням заголовних файлів » ресурсів, що включаються в цей файл.

2. Діалоговий додаток

Однак не слід забувати, що діалоговий додаток є повноцінним додатком Windows, в якому може бути використана підтримка технології ActiveX, що дозволяє вирішити питання з передачею даних в додаток з додатку. З іншого боку, цей додаток може бути оформлено у вигляді самостійного модуля, що дозволить поставити йому при виконанні рівень пріоритету, недоступний для потоку основного додатку. Тому діалоговий додаток може застосовуватися для реалізації критичних до часу виконання фрагментів програми.

Щоб створити заготівку діалогового додатка з використанням майстра AppWizard:

1. Закрийте всі відкриті проекти та файли і виберіть команду File, New. З'явиться діалогове вікно New, розкрите на вкладці Projects, як це показано на рис. 1.1.

2. Виберіть MFC AppWizard (exe) і введіть в текстове вікно Project name ім'я проекту "DialogApplication". Ці дії аналогічні діям, вжитим на першому кроці створення консольного застосування.

3. Натисніть кнопку ОК. З'явиться діалогове вікно MFC AppWizard - Step 1 (Майстер створення заготовки проекту, що використовує бібліотеку MFC. - Крок 1).

• Перемикач What type of application would you like to create? (Який тип додатка слід створювати?) Має наступні положення:

– Single document (Одновіконний додаток)

– Multiple documents (Багатовіконний додаток)

– Dialog based (Діалоговий додаток)

• Крім того, при установці перемикача в положення Single document або Multiple documents з'являється можливість установки прапорця Document / View architecture support? (Використовувати архітектуру Документ / Представлення?)

4. Встановіть перемикач Dialog Based. При цьому діалогове вікно прийме вигляд, зображений на рис. 1.5

 

Рис 1.5. - Діалогове вікно MFC AppWizard

 

5. Натисніть кнопку Next> (Далі). З'явиться діалогове вікно MFC AppWizard - Step 2 of 4 (Другий крок з чотирьох майстра AppWizard по генерації заготовки програми, що використовує MFC), зображене на рис. 1.6.

Рис. 1.6 – Диалоговое окно MFC AppWizard — Step 2 of 4

 

• У групу What features would you like to include? (Яке властивості повинно мати створюване вікно?) Об'єднані наступні прапорці:

– About box (Діалогове вікно властивостей) - визначає можливість виклику з створюваного діалогового вікна іншого діалогового вікна, в якому буде міститися інформація про версію програми і її розробника і яке буде викликатися за замовчуванням

– Context-sensitive Help (Контекстна довідка) - визначає необхідність включення в створюване додаток довідкової системи. За замовчуванням в додатку відсутня довідкова система

– 3D controls (Об'ємні елементи управління) - визначає зовнішній вигляд елементів керування діалогового вікна. Об'ємні елементи управління використовуються за замовчуванням

• У групі What other support would you like to include? (Які додаткові властивості повинно мати створюване вікно?) Об'єднані наступні прапорці:

– Automation (Автоматизація) - визначає здатність даного додатку віддати управління іншому застосуванню через механізм Automation. За замовчуванням така можливість не передбачена

– ActiveX Controls (Елементи управління ActiveX) - визначає можливість використання у створюваному вікні елементи керування ActiveX. Можливість передбачена за замовчуванням

• У групі Would you like to include WOSA support? (Чи слід включити в додаток підтримку Internet?), Є всього один прапорець - Windows Sockets, призначення якого ясно без перекладу. За замовчуванням підтримка Internet відсутня

• У текстовому полі Please enter a title for your dialog: (Введіть заголовок діалогового вікна) міститься пропонований майстром AppWizard заголовок створюваного діалогового вікна. Користувач може ввести в дане текстове поле будь-який заголовок

6. Залиште всі установки без змін і натисніть кнопку Next>. З'явиться діалогове вікно MFC AppWizard - Step 3 of 4 (Третій крок з чотирьох майстра AppWizard по генерації заготовки програми, що використовує MFC), зображене на рис. 1.7.

Рис. 1.7. – Диалоговое окно MFC AppWizard — Step 3 of 4

 

• Група перемикачів What style of project would you like? (Вибір стилю проекту) має наступні положення:

MFC Standard (Стандартний додаток MFC). Це установка за замовчуванням Windows Explorer (Стиль браузера Internet). Можливість перемикання в це положення в даному випадку відсутня

 

• Група перемикачів Would you like to generate source file comments? (Чи включати коментарі в тексти вихідних файлів?) Має наступні положення:

Yes, please (Увімкніть, будь ласка). Це установка за замовчуванням

No, thank you (Спасибі, не треба)

• Група перемикачів How would you like to use the MFC library? (У якому вигляді використовувати бібліотеку MFC?) Має наступні положення:

As a shared DLL (Як розподільні бібліотеки динамічної компоновки). Такий вибір зменшує розмір виконуваного файлу і знижує обсяг використовуваної оперативної пам'яті. Це установка за замовчуванням

As a statically linked library (Як статичні бібліотеки). Такий вибір дозволяє програмі працювати на комп'ютері, де не встановлені необхідні бібліотеки динамічного компонування

7. Залиште всі установки даного діалогового вікна без змін і натисніть кнопку Next>. З'явиться діалогове вікно MFC AppWizard - Step 4 of 4 (Четвертий крок з чотирьох майстра AppWizard по генерації заготовки програми, що використовує MFC), зображене на рис. 1.8.

Рис.1.8 - Діалогове вікно MFC AppWizard - Step 4 of 4

 

• У цьому діалоговому вікні перераховані створювані майстром AppWizard класи. При виділенні класу у верхньому вікні у відповідних текстових полях, розташованих нижче, з'являється ім'я цього класу, ім'я базового класу, ім'я файлу заголовка, в якому міститься заголовок даного класу, і ім'я файлу реалізації, в якому міститься опис методів даного класу. Якщо відповідна інформація розташована на білому фоні, то вона може бути змінена, якщо вона розташована на сірому фоні, то вона є довідковою інформацією і не підлягає редагуванню

• Це вікно є останнім вікном майстра. Якщо ви згодні з со-що тримається в даному вікні інформацією, переходьте до п. 11. Якщо вас не влаштовує який-небудь параметр, заданий в одному з попередніх діалогових вікон:

8. Натисніть кнопку <Back (Повернення до попереднього діалогового вікна) і поверніться в попереднє вікно.

9. Якщо установка змінного параметра проводиться не в цьому вікні, повторіть п. 8.

10. Змініть необхідний параметр і натисніть кнопку Next> стільки разів, скільки необхідно для повернення в діалогове вікно MFC AppWizard - Step 4 of 4.

11. Натисніть кнопку Finish. З'явиться діалогове вікно New Project Infor-mation, зображене на рис. 1.9, в якому будуть перераховані значення всіх встановлених параметрів.

 

Рис 1.9. - Діалогове вікно New Project Information

 

12. Якщо ви згодні з ними, натисніть кнопку ОК, якщо ж не згодні - натисніть кнопку Cancel і повністю повторіть процедуру створення даного додатка.

Якщо ви натиснули кнопку ОК, то система генерує необхідні файли і відкриває заготовку діалогового вікна, зображену на рис. 1.10.

Рис. 1.10 - Заготівка діалогового вікна

Поряд з діалоговим вікном розташована панель інструментів Controls (Елементи управління), що дозволяє автоматизувати процес створення діалогового вікна. Елементи керування діалогового вікна будуть більш підробно описані пізніше.

 

3 Багатовіконний додаток Windows

 

Під багатовіконний додатком Windows ми будемо розуміти додаток, що використовує багатовіконний інтерфейс додатка (Multiple Document Interface, MDI). Подібні додатки є основними додатками Windows, тому надалі ми будемо в основному розглядати саме їх.

Щоб створити заготівлю віконного додатку Windows з використанням майстра AppWizard:

1. Закрийте всі відкриті проекти та файли і виберіть команду меню File, New. З'явиться діалогове вікно New, розкрите на вкладці Projects, як це показано на рис. 1.1.

2. Виділіть пункт MFC AppWizard (ехе) і введіть в текстове поле Project name ім'я проекту "MDI Application".

3. Натисніть кнопку ОК. З'явиться діалогове вікно MFC AppWizard - Step 1, зображене на рис. 1.5.

4. Залиште перемикач типу генерованого додатка в положенні Multiple documents (багатовіконний додаток) і не міняйте установку прапорця Document / View architecture support? (Використовувати архітектуру Документ / Представлення?).

5. Якщо використовувана вами версія Visual С + + не підтримує російську мову при генерації проектів, залиште в текстовому полі What language would you like your resources in? (Яку мову слід використовувати при створенні ресурсів?) Значення Англійська (США) (APPWZENU.DLL).

6. Натисніть кнопку Next>. З'явиться діалогове вікно MFC AppWizard - Step 2 of 6, зображене на рис. 1.12.

 

Рис 1.11 - Діалогове вікно MFC AppWizard - Step 2 of 6

 

• Група перемикачів What database support would you like to include? (Яким чином в проекті будуть використані бази даних) має наступні положення:

– None (Бази даних не використовуються). Це установка за замовчуванням

– Header files only (Лише файли заголовків). Перемикач слід встановлювати в це положення, якщо ви хочете мати доступ до бази даних, але не хочете, щоб ваш клас уявлення був похідним від класу CFormView, або не хочете мати меню Record

– Database view without file support (Перегляд баз даних без файлової підтримки). Перемикач слід встановлювати в це положення, якщо ви хочете, щоб ваш клас уявлення був похідним від класу CFormview, або хочете мати меню Record, але не потребуєте використанні вбудованих в документ методів роботи з архівом (використовувати метод serialize)

– Database view with file support (Бази даних при наявності файлової підтримки). Перемикач слід встановлювати в це положення, якщо ви потребуєте у всіх можливостях, що надаються попередньої установкою перемикача, і хочете використовувати вбудовані в документ методи роботи з архівом

• У випадку, якщо ви встановили перемикач в останні два положе ня, вам доведеться натиснути кнопку Data Source ... (Джерело даних) і вибрати вихідну базу даних

7. Натисніть кнопку Next>. З'явиться діалогове вікно MFC AppWizard - Step 3 of 6, зображене на рис. 1.12.

 

Ріс.1.12 - Діалогове вікно MFC AppWizard - Step 3 of 6

 

• Група перемикачів What compound document support would you like

to include? (Яким чином в проекті будуть використані составні документи?) Має наступні положення:

– None (Составні документи не використовуються). Це установка за замовчюванням

– Container (Контейнер). При даній установці перемикача ваш додаток зможе утримувати пов'язані або упроваджені об'єкти ActiveX, такі як документи Word або Excel

– Mini-server (Міні-сервер). При даній установці перемикача ваш додаток буде здатний створювати документи, які можуть впроваджуватися в інші програми, але які не передбачається запускати як самостійні програми

– Full-server (Повноцінний сервер). При даній установці перемикача ваш додаток буде створювати документи, які не тільки можуть впроваджуватися в інші програми, але і запускатися як самостійні програми

– Both container gnd server (Одночасно сервер і контейнер). При даній установці перемикача ваш додаток буде створювати документи, які не тільки можуть впроваджуватися в інші програми, але і документи інших додатків матимуть можливість впроваджуватися в ваш додаток

• Якщо ваш додаток буде сервером, то у вас з'явиться можливість встановити прапорець Active document server (Сервер активного документа), а якщо ваш додаток є контейнером, то у вас з'явиться можливість встановити прапорець Active document container (Контейнер активного документа). Обидва цих прапорця за умовчанням скинуті. Якщо ви встановите хоч би один з них, то на наступному етапі вам доведеться натиснути кнопку Advanced і визначити розширення для оброблюваного документа. Якщо ви цього не зробите, то не зможете не тільки перейти до наступного вікна, але і повернутися до даного і зняти цей прапорець

• Якщо ви вибрали підтримку складових документів, то вам необхід мо вибрати і підтримку складових файлів (compound files). Складові файли містять один або декілька об'єктів ActiveX і повинні зберігатися особливим чином, щоб будь-який об'єкт міг бути змінений без необхідності внесення змін до увесь файл, що дозволяє економити масу часу

• Група перемикачів Would you like support for compound files?

(Чи використовувати складові файли?) Має наступні положення:

Yes, please (Увімкніть, будь ласка). Це установка за замовчуванням No, thank you (Спасибі, не треба)

• Група What other support would you like to include? (Що ще включити в проект?) Містить наступні прапорці:

– Automation (Автоматизація). Цей прапорець слід установити в тому випадку, якщо ви хочете, щоб ваш додаток передавал управління іншому додатку за допомогою механізму Automation. За замовчуванням така можливість не надається

– ActiveX Controls (Елементи управління ActiveX), Цей прапорець слід установити, якщо в додатку передбачається використання елеметів управління ActiveX. Використання подібних елементів управління у проекті передбачається за замовчуванням

8. Залиште всі елементи управління в їх положенні за замовчуванням і на-тисніть кнопку Next>. З'явиться діалогове вікно MFC AppWizard - Step 4 of 6, зображене на рис. 1.14.

• У групу What features would you like to include? (Які властивості поса но мати створюване вікно?) Об'єднані наступні прапорці:

Docking toolbar (перемішати панель інструментів). При встановленні цього прапорця головне вікно програми буде містити панель інструментів, яка може бути розташована уздовж будь-якої з його сторін. За замовчуванням цей прапорець встановлений

Див також главу 9

Initial status bar (Панель стану). При встановленні цього прапорця головне вікно програми буде містити панель стану, що відображає довідкову інформацію по пунктах меню, кнопок панелі інструментів, а також іншу довідкову інформацію. За замовчуванням цей прапорець установлено

Див також главу 9

Printing and print preview (Друк і попередній перегляд друку). При установці цього прапорця в меню File (Файл) створюваного додатка будуть перебувати пункти Erint (Друк) і Print preview (Попередній перегляд друку), а майстер включить в додаток більшу частину програмного коду, пов'язаного з реалізацією цих завдань. За замовчуванням цей прапорець встановлений

Див також розділ 10

Context-sensitive Help (Контекстна довідка). При установці цього прапорця в створюваний додаток включається довідкова система. За замовчуванням цей прапорець знятий.

3D controls (Об'ємні елементи управління). При установці цього прапорця в створюваному додатку будуть використовуватися об'ємні елементи управління. За замовчуванням цей прапорець встановлений

MAPI (Messaging API) (Поштовий інтерфейс MAPI). При установці цього прапорця створюване додаток зможе обмінюватися сообщенямиповідомленнями по електронній пошті і відправляти факси. За замовчуванням цей прапорець знятий

Windows Sockets (Підтримка Internet). При установці цього прапорця створюване додаток зможе мати безпосередній доступ до Internet, використовуючи такі протоколи, як FTP і HTTP. За замовчуванням цей прапорець знятий

• Група перемикачів How do you want your toolbars to look? (Як повинна виглядати панель інструментів?) Має наступні положення;

Normal (Нормальна). При даній установці перемикача ваш додаток буде мати стандартну панель інструментів. Це установка за замовчуванням

Internet Explorer ReBars (Панелі інструментів Internet Explorer). При даній установці перемикача ваш додаток буде мати панель інструментів, виконану в стандарті браузера Internet Explorer

• У текстовому полі з інкрементний регулятором How many files would you like on your recent file list? (Скільки імен файлів повинен містити список останніх закритих файлів?) Встановлюється розмірність списку останніх закритих файлів

• Натискання кнопки Advanced (Додаткові установки) дозволяє провести додаткові установки. При її натисненні з'являється діалогове вікно Advanced Options (Додаткові установки), зображено на рис. 1.15

• Зі всіх текстових полів даного вікна нас найбільше цікавить текстове поле File extension: (Розширення файлу), оскільки саме в нього повинна бути введена інформація про розширення файлу документа, що оброблюється, якщо на третьому кроці майстра ви встановили прапорець Active document server або прапорець Active document container

• Як вже говорилося раніше, при установці зазначених прапорців без за-повнення цього текстового поля користувач не зможе завершити четвертий крок майстра AppWizard

9. Закрийте, якщо ви його відкрили, діалогове вікно Advanced Options, ос-залиште без зміни всі установки за замовчуванням і натисніть кнопку Hext> в діалоговому вікні MFC AppWizard - Step 4 of 6. З'явиться діалогове вікно MFC AppWizard - Step 5 of 6, зображене на рис. 1.16.

• Група перемикачів What style of project would you like? (Який стиль слід обрати для створюваного проекту?) Має наступні положення:

MFC Standard (В стандарті MFC). При даній установці перемикача буде створено стандартне додаток, що використовує бібліотеку MFC. Його зовнішній вигляд наведено на рис. 1.17. Це установка за замовчуванням

Windows Explorer (Стиль браузера Internet). Зовнішній вигляд отриманого при цій установці додатка з ім'ям ExplorerApplication приведено на рис. 1.18

• Група перемикачів Would you like to generate source file comments?

(Чи включати коментарі в тексти вихідних файлів?) Має наступні положення:

Yes, please (Увімкніть, будь ласка). Це установка за замовчуванням No, thank you (Спасибі, не треба)

• Група перемикачів How would you like to use the MFC library?

(У якому вигляді використовувати бібліотеку MFC?) Має наступні положення:

As a shared DLL (Як «разделяемые» бібліотеки динамічної компоновки). Такий вибір зменшує розмір виконуваного файлу і знижують обсяг використовуваної оперативної пам'яті. Це установка на вимогу

As a statically linked library (Як статичні бібліотеки). Такий вибір дозволяє програмі працювати на комп'ютері, де не встановлені необхідні бібліотеки динамічного компонування

Ці перемикачі аналогічні установкам на кроці 3 створення діалогового додатка

10. Залиште без зміни всі установки за замовчуванням і натисніть кнопку-Next>. З'явиться діалогове вікно MFC AppWizard - Step 6 of 6, зображено на рис. 1.19.

Це вікно і його поля аналогічні діалоговому вікну, одержуваному на кроці 4 створення діалогового додатку. Однак при створенні багатовіконного додатка виникає одне питання, яке доцільно висвітлити саме в цьому місці

Як видно з рис. 1.19, майстер AppWizard збирається створити класи з іменами CMDiAppiicetionview і CMDiAppiicetionDoc. Це класи уявлення і документа. Їх імена пов'язані з ім'ям додатка. Цей підхід доцільний в разі, коли в додатку буде тільки один клас уявлення і пов'язаний з ним клас документа. Однак у більшості випадків в багатовіконному додатку доводиться працювати з декількома класами документів і відповідними їм класами уявлення. У цьому випадку, якщо не внести зміни в імена цих класів, одна пара класів отримує "сліпі" імена, не пов'язані з особливостями оброблюваних ними документів і подань. Звичайно, можна знищити створені майстром класи, але доцільніше просто перейменувати ці класи по імені одного з видів оброблюваних документів. В даному випадку створюється демонстраційне додаток, тому імена класів залишені без змін

Список, що розкривається Base class: дозволяє вибрати базовий клас для класу подання даного документа. Якщо додаток створюється для виведення графічної інформації, то немає необхідності змінювати обраний за замовчуванням базовий клас cview. Однак якщо додаток передбачається використовувати як текстовий редактор, то в якості базового класу слід вибрати клас CEditview або клас CRichEditview, як це описано в розділі 8. Існують і інші випадки, в яких необхідно змінювати вміст текстового поля списка, що розкривається Base class:

Якщо ви згодні з наведеним в даному вікні переліком створюваних файлів і класів, перейдіть до п. 12.

11. При необхідності внесіть необхідні зміни в текстові поля даного вікна або натисніть кнопку <Васк і внесіть зміни в вміст попередніх вікон, як це було описано в пп. 8-10 методики створення діалогового додатків.

12. Натисніть кнопку Finish. З'являється діалогове вікно New Project Infor-mation, зображене на рис. 1.20.

Це вікно вже розглядалося при описі створення попередніх проектів 13. Якщо ви згодні створити описаний в цьому вікні проект, натисніть кнопку ОК. Буде створений проект, докладно розглянутий у главі 2.

 

4.Одновіконний додаток

У діалоговому вікні MFC AppWizard - Step 1, зображеного на рис. 1.6, залишилося одне досі не розглянуте положення перемикача What type of application would you like to create?, А саме, Single Document. При установці перемикача в це положення буде створено Одновіконний додаток, який іноді називають ще додатком, що використовує один документ. Цей додаток, за своєю суттю, займає проміжне поло ження між діалоговим і багатовіконний додатками.

Даний тип програми може використовуватися для обробки конкретного типу документа. При цьому передбачається, що при обробці даного документа не потрібно використання інших документів. Подібні завдання, але без використання документів, вирішує діалогове додаток. Однак такі завдання, як правило, вимагають забезпечення дружнього інтерфейсу користувача. З цієї точки зору діалогові додатки мають велику перевагу в порівнянні з одновіконних застосувань, єдиним достоїнством яких є можливість роботи з документом, за яку доводиться платити зведенням всього користувальницького інтерфейсу до роботи з меню й панелями інструментів.

Зазвичай обробка одного документа припускає можливість одночасного менной роботи з пов'язаними з ним документами, наприклад, дня внесення до них відповідних змін по ходу роботи або одержання з них необхідної інформації. Тому при будь-якій роботі з документами краще відразу передбачати використання багатовіконного інтерфейсу.

У силу зазначених вище причин тут не буде докладно описана процедура створення одновіконних застосувань, тим більше що вона багато в чому аналогічна процедурі створення багатовіконного додатка. Ви можете створити подібний додаток самостійно в якості перевірки своїх знань по роботі з майстром AppWizard.

КОНТРОЛЬНІ ЗАПИТАННЯ

1. Назвіть етапи створення консольного застосування?

2. Назвіть етапи створення діалогового додатки?

3. Назвіть етапи створення Одновіконний додатка?

4. Назвіть етапи створення багатовіконного програми?


Лекція № 4

Тема: Класи та об‘экти Visual C++. Використання конструкторів та деструкторів у пакеті Visual C++

ПЛАН

1. Поняття класу та об'єкта. Специфікатори доступу до членів класу

2. Оголошення або специфікація класу

3. Реалізація класу

4. Оголошення об'єкта класу. Інкапсуляція. Переваги інкапсуляції. Конструктори і деструктори.

1. Поняття класу та об'єкта. Специфікатори доступу до членів класу

У оточуючої людей реальності об'єкт є її частиною, він існує в часі і просторі. Об'єкт можна побачити, доторкнутися, або знати, що він є, наприклад, файл на магнітному диску або вантаження конкретного вагона на залізничній станції.

У кожної книги свої автор, назва, рік видання, бібліотечний шифр і вартість, які є властивостями книги. Кожна книга в бібліотеці може володіти деяким станом: книга вільна (значить, вона може бути видана читачеві), книга видана (значить, вона знаходиться у читача). Книги відрізняються один від одного конкретними значеннями властивостей, набір яких є унікальним для кожної окремої книги, а також конконкретним станом, поточне значення якого може змінюватися у часі. Над книгами в бібліотеці можна виробляти різні дії: шукати потрібні книги, створювати в бібліотечному фонді нові, видавати читачам, повертати в бібліотеку. Конкретна дія може спричинити за собою зміну стану. Наприклад, дія "видати книгу" змінює її стан з "вільна" у стан "видана".

Набір властивостей книги (автор, назва і т. д.) не що інше, як дані. Дії (шукати, створити і т. д.) - функції, які виконуються над книгами. Ключова ідея об'єктно-орієнтованого програмування полягає в тому, що дані і вироблені над цими даними дії об'єднуються і представляють єдине неподільне ціле, яке і називають об'єктом. Об'єктно-орієнтована програма являє собою безліч взаємопов’язаним один з одним об'єктів. Взаємодія об'єктів здійснюється через виклик деякої функції цього об'єкта. У термінах об'єктно-орієнтованого програмування виклик функції називають передачею повідомлення. Наприклад, повідомленнями для книги можуть бути наступні: шукати, видати. Динаміка зміни станів об'єкта та його реакція на повідомлення, що поступають відображає поведінку об'єкта.

Загальний опис для всіх об'єктів із загальними властивостями і поведінкою називаються класом об'єктів. Клас вводить поняття абстракції, яка дозволяє встановити суттєві характеристики об'єкта, які відрізняють його від всіх інших об'єктів і чітко визначають особливості цього об'єкта з точки зору подальшого розгляду. Клас можна ні побачити, ні помацати, але можна знати, що він є (наприклад, у програмному файлі на диску, в бібліотеці класів). Клас показує, як побудувати існуючу в часі і просторі змінну цього класу - об'єкт.

Клас (class) - визначається програмістом тип даних, який описує безліч об'єктів із загальними властивостями, поведінкою і семантикою. Кожен клас має унікальне ім'я, яке визначає назву нового типу даних. Наприклад, для безлічі книг можна визначити клас своок.

Об'єкт (object) - змінна типу клас або екземпляр класу. За правилами оголошення змінних для класу своок можна, наприклад, оголосити об'єкт цього класу як своок book.

У зв'язку з тим, що тип класу об'єднує дані і операції обробки цих даних в єдине ціле, для класів вводиться поняття членів класу (class members). До членів класу відносяться дані (data members) і функції (members function).

Член класу (дане) - іменована характеристика або властивість об'єктів класу, яке має власне значення для кожного об'єкта. Наприклад, у класі своок можна оголосити дані author, title, year, які будуть визначати автора, назву і рік видання для об'єктів-книг класу. Для кожної книги ці дані будуть мати конкретні значення.

Член класу (функція) - це функція, яка належить класу, за допомогою якої об'єкт класу взаємодіє з об'єктами інших класів або того ж самого класу. Функції-члени прийнято називати методами. Метод перед-ставлять собою дію, яку повинен виконати об'єкт для реалізації своєї поведінки, або сервіс, який може бути затребуваний одним об'єктом в іншого. У кожного методу є свій об'єкт-одержувач, тобто об'єкт, для якого метод застосовується. Якщо він використовує тільки дані свого класу, то у нього не буде параметрів. Якщо ж для виконання методу потрібні додаткові аргументи, то він є параметризовані. Деякі методи можуть набувати різні форми в різних класах, такі методи називаються поліморфними. Визначення методів знаходиться в класі. Виконують методи об'єкти класів, коли ці методи ними викликаються.

Поняття класу є найбільш важливим у мові С + +. Синтаксис опису класу схожий на синтаксис опису структури. Ось його основна форма:

class <имя_класса>

{

// закрытые функции-члены и данные-члены класса

public:

// открытые функции-члены и данные-члены класса

} <список_объектов>;

 

В описі класу <список_об'ектов> не є обов'язковим. Ви можете оголосити об'єкти класу пізніше, в міру необхідності. <имя_класса> стає новим ім'ям типу даних, яке використовується для оголошення об'єктів цього класу.

Функції та змінні, оголошені усередині оголошення класу, стають членами цього класу. Змінні, оголошені усередині оголошення класу, називаються даними-членами цього класу; функції, оголошені усередині оголошення класу, називаються функціями-членами класу. За замовчуванням, всі функції та змінні, оголошені в класі, стають закритими для цього класу. Це означає, що вони доступні тільки для інших членів цього класу. Для оголошення відкритих членів класу використовується ключове слово public, за яким слідує двокрапка. Всі функції і змінні, оголошені після слова public, доступні і для інших членів класу, і для будь-якої іншої частини програми, в якій міститься клас.

Приклад оголошення класу:


Поделиться:

Дата добавления: 2014-12-03; просмотров: 243; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты