Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Производный класс



Синтаксис определения производного класса:

class cl3: atr1 cl1[, atr2 cl2]//cl1 - имя базового класса

{ //atr1 - атрибут наследования (private, public, protected)

... }

Атрибут наследования осуществляет управление доступом к элементам базового класса внутри производного класса. По умолчанию атрибут наследования - private.

Схема управления доступом в производном классе к наследуемым элементам имеет вид табл. 3.1.

Таблица 3.1.

Атрибут наследования Атрибут доступа в базовом классе Прямой доступ в производном классе к наследуемым элементам (по имени элем.)
private private protected public private, доступа нет варианты: 1 private, но доступ есть 2 private, но доступ есть 2
protected private protected public private, доступа нет 1 protected, доступ есть 3 protected, доступ есть 3
public private protected public private, доступа нет 1 protected, доступ есть 4 public, доступ есть 4

В файл заголовков производного класса директивой #include необходимо включить файл заголовков базового класса.

Схема управления доступом на условном примере представлена в таблице 3.2.

Таблица 3.2.

class cl1 //баз. класс { private: int a1; void x1(); protected: int b1;void y1(); public: int c1; void z1(); }; class cl2:public cl1//пр.кл { private: int a2; void x2(); protected: int b2;void y2(); public: int c2; void z2(); }; class cl3:private cl1//пр.кл { private: int a3; void x3(); protected: int b3;void y3(); public: int c3; void z3(); };
Прямой доступ в cl1: a1, x1(), b1, y1(), c1, z1() Прямой доступ в cl2: b1, y1(), c1, z1(), a2, x2(), b2, y2(), c2, z2() Прямой доступ в cl3: b1, y1(), c1, z1(), a3, x3(), b3, y3(), c3, z3()
Доступ из внеш.функций через объект (cl1 obj1): c1, z1() Доступ из внеш.функций через объект (cl2 obj2): c1, z1(), c2, z2() Доступ из внеш.функций через объект (cl3 obj3): c3, z3()




Дата публикования: 2014-11-26; Прочитано: 198 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...