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 відповідно.


 

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

35225. MS Access. Створення бази даних у вигляді декількох таблиць 168 KB
  Створення бази даних у вигляді декількох таблиць. План Основні поняття про бази даних. Задача Успішність Створити базу даних з трьох таблиць: Оцінки рис. Основні поняття про бази даних.
35226. КЛИНИКА, ДИАГНОСТИКА И ЛЕЧЕНИЕ ПОРАЖЕНИЙ ТОКСИЧНЫМИ ХИМИЧЕСКИМИ ВЕЩЕСТВАМИ 975.5 KB
  Яд – вещества вызывающие отравления в малых количествах. Понятие «малое количество» носит весьма субъективный характер. Некоторые яды вызывают смертельные исходы в дозах равных нескольким нанограммам (ботулотоксин), другие вещества (суррогаты алкоголя) вызывают отравления при поступлении в организм в количестве десятков, сотен грамм.
35228. Основи організації вуличного руху транспорту. Схеми переміщення транспорту. Організація руху на міських вулицях 18.73 KB
  Раціональна організація руху транспорту в містах дозволяє забезпечити високу швидкість і безпеку руху, найбільші зручності для пасажирів и економічність перевезень.
35229. Модифікація даних. Створення вихідних документів 126.5 KB
  Мета: Навчитися модифікувати дані, які знаходяться в таблицях. Навчитися створювати прості вихідні документи.
35230. Створення екранних форм 453.5 KB
  Создаем запрос для формы Рыночные цены Создаем ленточные формы Рыночные цены на основе запроса Рыночные цены и Справочник товаров с помощью мастера форм Открываем с помощью конструктора форму Рыночные цены Для создания расчетных итоговых полей которые содержат средние значения полей необходимо на панели элементов сначала нажать на кнопку поле b потом в Обпасти данных выделить место для построения расчетного итогового поля. Создаем форму Товары с помощью мастера форм Для создания иерархичной формы Товары и их цены в...
35231. Створення базових таблиць різними способами 164 KB
  Мета заняття: вивчити способи створення базових таблиць. Вивчити умови необхідні для створення взаємозвязаних таблиць і прийоми їх створення. Опишіть способи створення базових таблиць.
35233. Метод Ейлера вирішення задачі Коші 38.5 KB
  Мета: Навчитися будувати розв’язок задачі Коші по методу Ейлера. Скласти програму.