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() вони не доступні.


 

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

2807. Объявление и инициализация переменных 37.5 KB
  Лекция 5 Объявление и инициализация переменных Переменная – это ячейка памяти определённого типа, в которой может храниться значение данного типа. Объявление переменной – это её создание в тексте программы. Форма записи: модификатор тип сп...
2808. Выражения как комбинация операндов и операций 30 KB
  Лекция 6 Выражения Выражение – это комбинация операндов и операций, задающая порядок вычисления некоторого значения и принимающая это значение. Операции – это инструкции, определяющие действия над операндами. В качестве операнда могут выст...
2809. Операции как символ или комбинация символов 136 KB
  Операции Операция – это символ или комбинация символов, которые сообщают компилятору о необходимости произвести определённое арифметическое, логическое или другое действие. Операции в языке C  могут иметь от одного до трех опера...
2810. Операторы как конструкторы языка 62 KB
  Лекция Операторы Оператор – это конструкция языка C, которая определяет для компилятора конечный набор действий. Пустой оператор. Пустой оператор состоит только из точки с запятой. Форма записи, При выполнении этого оператора ничего не п...
2811. Массивы как наборы данных одного типа 73 KB
  Лекция. Массивы Массив – это набор данных одного типа, собранных под одним именем. Форма объявления массива: класс памяти тип список массивов. Поле класс памяти определяет класс памяти массива и является необязательным. Поле тип является о...
2812. Структура программы и модификаторы типа указателей в ОС MS-DOS 53.5 KB
  Лекция. Структура программы и модификаторы типа указателей в ОС MS-DOS В общем виде программа на языке C состоит из директив препроцессора, объявлений и определений объектов, команд, которые могут быть записаны как в одном, так и в нескольких моду...
2813. Измерительные преобразователи и схемы 3.63 MB
  Понятие измерительных преобразователей (ИП), виды, классификация. Эксплуатация летательных аппаратов в авиации связаны с получением данных о значении различных физических величин, характеризующих состояние объекта управления - механических, тепло...
2814. Приспособление городских территорий к застройке 38 KB
  Приспособление городских территорий к застройке Основные задачи организации поверхностного водоотвода. Отвод поверхностных вод - одно из основных мероприятий инженерной подготовки и благоустройства городской территории. К основным задачам орган...
2815. Организация и технология торговли 3.46 MB
  Переход экономики Украины на рыночные отношения вызвал кардинальные изменения в деятельности всех отраслей хозяйственного комплекса страны. Торговля как одна из наиболее масштабных сфер предпринимательской деятельности получила за последнее...