69723

Захищене наслідування

Лекция

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

До базового класу можна застосовувати механізм захищеного наслідування. При цьому всі відкриті і захищені члени базового класу стають захищеними членами похідного класу. Розглянемо приклад.

Украинкский

2014-10-09

23.5 KB

0 чел.

Тема 1: Захищене наслідування

До базового класу можна застосовувати механізм захищеного наслідування. При цьому всі відкриті і захищені члени базового класу стають захищеними членами похідного класу. Розглянемо приклад.

#include <iostream>

using namespace std;

class base {

protected:

int i, j; // Закриті члени класу base

// доступні класу derived.

public:

void setij(int а, int b) { i=a; j=b; }

void showij() { cout « i « " " « j « "\n"; }

};

class derived : protected base {

int k;

public:

//Клас derived має доступ до членів i, j і setij()

// з класу base

void setk() { setijd(10, 12); до = i*j; }

// Звідси можна викликати функцію showij().

void showall() { cout << k « " "; showij(); }

};

int main() {

derived ob;

ob.setij (2, 3);

// Невірно, функція setij() є закритим членом класу derived.

ob.setk();

// Вірно, викликається відкритий член класу derived.

ob.showall();

// Вірно, викликається відкритий член класу derived.

//ob.showij () ; // Невірно, функція showij() є

// захищеним членом класу derived

return 0;

}

Як випливає з коментарів, не дивлячись на те що функції setij() і showij() є відкритими членами класу base, в класі derived, утвореному за допомогою захищеного наслідування, вони стають захищеними. Це означає, що функції main() вони не доступні.


 

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

52921. Домашнє господарювання. Етикет за столом 39 KB
  T.: Hello, friends! How are you? I hope things couldn’t be better! Today we’ll learn more about householding chores. We’ll listen to a poem and a dialogue, read a text, make an interview and discuss it, learn how to cook a Bulgarian salad. At the end of the lesson you are to talk about householding in your family. I hope the lesson will be interesting for you!
52923. Этимология приходит на помощь 37.5 KB
  Этимология приходит на помощь Одно из направлений работы учителя языковеда углублённое исследование слова как единицы языка изучение его семантики строения орфографии. Например на уроке русского языка в 5м классе задаю вопрос заставляющий задуматься: Что общего между словами капитан и капуста . Вывод к которому подводим детей: оба слова родственники по происхождению произошли от латинского слова cput голова по латыни для капусты голова это её шаровидная форма а для капитана голова ...
52925. Речовий етикет і загальна культура молодших школярів 9.99 MB
  Виявити, теоретично обґрунтувати педагогічні умови формування базової культури учнів початкової школи й емпірично довести ефективність їх реалізації
52926. Сценарій уроку - гри „Еврика” 60 KB
  Як називається чотирикутник у якого сторони протилежні паралельні 2. Як називається паралелограм у якого всі сторони рівні 6. 7 Як називається паралелограм у якого діагоналі перпендикулярні 8. Як називається відрізок що сполучає протилежні вершини 10.
52928. Сценарій пісенного конкурсу «Євробачення – 2012» 71.5 KB
  Ведучий 1: Увага Увага Починаємо пісенний конкурс гімназійної молоді Євробачення 2012 звучить патетична мелодія Ведучий 2: Дім наш рідний Україна Ріки гори і озера У Європу несемо ми Жовтосинії знамена. Ведучий 1: Бо є доля в нас єдина...
52929. Донецк -- один из городов-хозяев Евро-2012» для 5 класса 97.5 KB
  Донецк один из городов хозяев Евро 2012 Цель: познакомить детей с Донецком городом где будет проходить Евро 2012 с его историей значимыми местами города выда ющимися людьми Донбасса прославившими родной край Украину; развивать познавательный интерес желание и возможность прославить родной город своими достижениями; ...