68941

Контейнери

Лекция

Информатика, кибернетика и программирование

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

Украинкский

2014-09-27

23.5 KB

0 чел.

Лекція № 3

Тема: Контейнери

Контейнери

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

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

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

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

 

Приведемо простий приклад класів, що містяться.

class Array {

// декларація членів

};

class Matrix

{

// декларація членів

};

class LinearEquationSystem {

publ ic:

// декларація членів

protected:

Array n_Array;

Matrix m_Matrix;

// декларація інших членів

};

У прикладі оголошені класи Array, Matrix і LinearEquationSystem. Останній названий клас оголошений як клас, що має члени даних m_Array і m_Matrix, які є екземплярами класів Array і Matrix відповідно.


 

А также другие работы, которые могут Вас заинтересовать

20458. Основні задачі та проблеми проектування програмних продуктів 13.41 KB
  Пр428 Основні задачі та проблеми проектування програмних продуктів. Проектування – це процес розробки проекту тобто комплекту документації призначену для створення проекту його удосконалення та ліквідації а також для перевірки або відтворення проміжних і кінцевих рішень. Проектування – тривалий процес і включає етапи від підготовки технічного завдання до випробування. Процес створення програмного забезпечення ПЗ також включає в себе методи проектування.
20459. Каскадна (послідовна) модель 22.61 KB
  Вона передбачає послідовне виконання всіх етапів проекту в строго фіксованому порядку. Вимоги визначені на стадії формування вимог строго документуються у вигляді технічного завдання і фіксуються на весь час розробки проекту. Етапи проекту відповідно до каскадної моделлю: Формування вимог; Проектування; Реалізація; Тестування; Впровадження; Експлуатація та супровід. Недоліки: В Водоспадної моделі перехід від однієї фази проекту до іншого передбачає повну коректність результату виходу попередньої фази.
20460. Доповнення та різниця множин 18.86 KB
  Якщо A ⊂ U то елементи множини U які не належать А називаються доповненням множини А до множини U і позначають як CUA або UCA. Якщо A ⊂ U B ⊂ U то доповнення множини B до А називають різницею множин А та B саме в такому порядку і позначають А B або АB тобто A B = {x:x ∈ A ∧ x ∉ B}. Деякі властивості операції доповнення: A ∪ A′ = U A ∩ A′ = ∅ A′′ = A A − B = A ∩ B′ Об'єднання множин Об'єднанням множин А та B називається множина яка складається з усіх тих елементів які належать хоча б одній з множин A B: A ∪ B = {x: x ∈ A ∨ A...
20461. Життєвий цикл програмного забезпечення 58.5 KB
  Проектування: визначення структури системи та її проектуваннярозбиття програмної системи на окремі компоненти та проектування з визначенням ключових елементів структури даних. Тестування і верифікація: тестування вихідного текста;участь користувачів і колективів у всіх перевірках системи. Експлуатація і супроводження:використання готової програмної системи; оцінка її ефективності;усунення знайдених в процесі експлуатації помилок; внесення необхідних змін для підтримки актуальності програмної системи;д перевірка коректності внесених змін .
20462. Расчет характеристик вычислительных систем на основе стохастических сетей 239.66 KB
  В данной работе определяются характеристики вычислительной системы, модель замкнутой стохастической сети которой... Исходными данными для расчета являются следующие величины:
20463. Бу́лева фу́нкція (функція алгебри логіки, логічна функція) 22.02 KB
  Булева функція задається у вигляді таблиці або графіка зі стандартним лексикографічним розташуванням наборів аргументів. Нульарними булевими функціями є сталі 0 і 1. Функції 0 і 1 називаються тотожними нулем і одиницею функція x тотожною запереченням.
20464. CASE модель 14.28 KB
  Також під CASE розуміють сукупність методів і засобів проектування інформаційних систем з інтегрованими автоматизованими інструментами які можуть бути використані в процесі розробки ПЗ. У функції CASE входять засоби аналізу проектування й програмування. За допомогою CASE автоматизують процеси проектування інтерфейсів документування й генерування структурованого коду бажаною мовою програмування.
20465. Етапи проектування програмних продуктів 24.5 KB
  Немає універсальної технології розробки програм але більшість запропонованих технологій мають спільні риси адже об’єкт праці – програмний продукт відрізняється продуктовою однаковістю одним рівнем розвитку обчислювальної техніки та самої галузі програмування. Розробка програми на основі наперед підготовлених компонентів технологія збірного програмування є засобом переведення програмування на індустріальну основу зменшення складності програмування реальних задач продовження терміну використання окремих передових рішень що реалізовані в...
20466. Компонентне програмування 16.45 KB
  Таким чином компонентне програмування обходить проблему крихкості базового класу.Компонентноорієнтоване програмування включає в себе набір обмежень що накладаються на механізм об'єктноорієнтованого програмування далі ООП.Ситуація коли виникає нова парадигма програмування як обмеження колишньої вже була коли виникло структурне програмування для використання структур управління які виключають невпорядковані переходи управління за допомогою оператора GOTO що утрудняють аналіз алгоритму програми.