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


 

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

52854. Енергозбереження - працюємо разом 115.5 KB
  Мета: Навчати оцінювати запаси енергетичних ресурсів формувати переконаність у можливості раціонального використання природних ресурсів; навчати оцінювати побутові втрати енергії; підвести до висновку про можливість раціонального використання енергії; переконати учнів у необхідності пошуків засобів збереження енергії. Наші споживання в електроенергії змінюються в часі : доба тиждень рік. Доба Наші споживання в енергії змінюються на протязі доби частково від того в яких умовах ми живемо і частково від нашої роботи мал.1 З малюнок 1...
52855. Енергозбереження – почнемо з себе 83.5 KB
  Розширення індивідуального екологічного простору розвиток емпатії до природних об'єктів; Форма заняття: заняття студії Заняття розраховане на учнів 910 класу Обладнання: таблиці з зображенням будови атмосфери компютер підключений до мережі Інтернет свічка лампа розжарювання лампа енергозберігаюча лампа 20 21 Вт; лампа розжарювання 100 Вт; настільна лампа зі стандартним цоколем; кімнатний термометр; годинник кольорові стікери з зображенням пір року. Мета етапу сфокусувати увагу учнів на проблемі й викликати інтерес до...
52856. Енергосистема України. Споживання електроенергії. Енергозбереження 158 KB
  Споживання електроенергії. Мета: показати утворення енергосистеми України поєднання великих електростанцій і ліній електропередач; формувати вміння і навички встановлення відповідності у секторних діаграмах на основі аналізу статистичної інформації розширювати уміння усвідомлення власної значущості та можливості впливати на загальну енергозалежність країни; сформувати вміння аналізувати зміни частки різних видів електростанцій у загальному обсязі виробництва електроенергії в Україні. Символічним є те...
52857. Вулиця, на якiй я живу 30 KB
  My name is Semen. I live with my family in a big town. I live in Rivna street. My street is long. There are many green trees and flowers in our street. You can see many big houses and new shops in our street. My school is in our street too. In Rivna street you can always see many trams,buses and cars. In our street there are many men,women and children. My street is clean and nice. I like it very much
52858. About myself. My Biographical time-line 48 KB
  Мета уроку:систематизація пройденого лексико–граматичного матеріалу; формування комунікативних навичок усного мовлення; формування навичок аудіювання через прослуховування тексту з метою виділення ключової інформації; - biography to be born ballet primary school secondary school university to cheer to clap
52859. Освіта в Англії 192 KB
  Great Britain does not have a written constitution, so there are no constitutional provisions for education. The system of education is determined by the National Education Acts. It has many different faces, but one goal. Its aim is to realize the potential of all, for the good of the individual and the country. It embraces two educational purposes: first it gives a general education to all children, and second, it selects the most able and gives them more advanced education.
52861. What do you do? 47.5 KB
  James is lazy. He doesn’t like going to school. He has a quick shower every morning. He puts on his clothes, watches a cartoon. He never does his morning exercises to the radio. He eats bread and honey for breakfast. He has tea or coffee with a bar of chocolate. He never cleans his teeth. He catches the bus to school. He arrives at school late.
52862. Формування ключових та предметних компетентностей молодших школярів у контексті викликів сьогодення 90 KB
  Велику роль у цьому відіграють навчальні ігри. Їх використання підвищує інтерес дітей до навчання, сприяє створенню сприятливого психологічного клімату на уроці та розвитку активності учнів, а також дозволяє сконцентрувати увагу на головному – опануванні мовленнєвими навичками