Class Base

{

public: void f();

};

 

class Derived : private Base

{

public:

Base::void f ();

};

 

Як правило, похідний клас оголошується зі специфікатором доступу базового класу public.

Приклад.

 

Class A

{

int a;

protected:

void aa(int u) {a = u;}

};

 

 

class B: public A

{

int b;

public:

void bb(int u);

};

 

void B::bb(int u)

{

b = u;

aa(u); //використання захищеного члена-функції

}

 

Аргументи, передані в базовий клас.

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

Приклад передачі параметрів.

 

Сlass A

{

int a, b, c;

public:

A(int x, int y, int z) (a = x; b = y; c = z;)

};

 

class B:public A

{

int val;

public:

B(int d):A(d, d+1, d+5) {val = d;}

B(int d, int e);

};

 

B::B(int d, int e):A(d, e, 13)

{

val = d + e;

}

 

Будь-які аргументи, передані в базовий клас, потрібно визначити до того, як виконується тіло конструктора, оскільки параметри передаються конструктору базового класу до того, як виконається конструктор похідного класу. Тут сказано потрібно, а не повинно. Якщо ви дійсно хочете передавати ініціалізовані параметри базовому класу, то не використовуйте їх доти, поки не проініціалізуєте.

Приклад передачі неініціалізованих параметрів базовому класу.

 








Дата добавления: 2014-12-26; просмотров: 776;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.