русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Доступ до базового класу


Дата додавання: 2014-04-22; переглядів: 922.


Важливим компонентом успадковування є знання того, коли для об’єктів похідного типу можуть бути використані методи базового класу. Розглянемо їх на прикладі програми 11.1.

Підстановка конструкторів базового класу

Створимо об’єкт класу CountOn в функції main()

CountOn c1;

Цей рядок означає, що с1 буде створений як об’єкт класу CountOn та ініціалізований нулем. Але клас CountOn не має конструктора, яким же чином виконається ініціалізація? Виявляється, якщо ми не визначили конструктор похідного класу, то буде використовуватися підходящий за сигнатурою конструктор базового класу. В даному випадку компілятор використовує конструктор класу Counter без аргументів.

 

Підстановка методів базового класу

Об’єкт с1 класу CounOn також може використовувати методи operator++() та get_count() з базового класу:

++c1;

cout <<"\nc1="<<c1.get_count();

Компілятор, не знайшовши цих методів в класі, об’єктом якого є с1, використовує методи базового класу.

 


<== попередня лекція | наступна лекція ==>
Базовий і похідний класи | Специфікатор доступу protected


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн