Наследяване в C
| Информационни технологии | 2009-12-04 | 74 сваляния |
-
Наследяване
-
Наследяването дава възможност на един нов клас да наследи един или повече класове като добави нови компоненти (данни и функции).
-
Дефинира се нов клас (производен или наследник) на основата на съществуващ клас (предшественик или базов).
-
Наследникът има информация за прекия базов клас, като не копира неговите компоненти, а само ги доразвива.
Общ вид на дефиницията на класа наследник:
class име_клас_наследник:тип_наследяване име_базов_клас
{ //Тяло на класа наследник
}
където тип_наследяване може да бъде: public, private, protected
-
Посредством типа на наследяване се определя достъпът до отделните части (public, private, protected) на базовия клас.
-
Не могат да се наследяват: конструктори, деструктори, приятелски функции, предефинирани оператори за присвояване.
-
-
1. Просто наследяване тип public
-
-
За простото наследяване е характерно, че всички класове наследници имат общ базов клас и наследяват само по един предшественик.
-
За производен клас деклариран като public всички public, protected и private компоненти на базовия клас се наследяват съответно като public, protected и private компоненти.
-
Достъпът до private данни е забранен и е възможен чрез методите protected или public (интерфейса на класа).
-
Данните protected са достъпни за директен достъп в класа наследник.
class base
{ private: int b1;
protected: int b2;
public: int b3();
};
class drv1:public base //обект от drv1 има директен достъп до
{ private: int d11; //d11,d12,d13,b2,b3
protected: int d12; //достъпът до b1 е чрез интерфейса
public: int d13(); //на класа base
};
class drv2:public drv1 //обект от drv2 има директен достъп до
{ private: int d21; //d21,d22,d23,d12,d13,b2,b3
protected: int d22; //достъпът до b1,d11 е чрез интерфейса
public: int d23(); //на съответния базов клас
};
-
Пример изясняващ същността на наследяването
#include
class point
{ int x,y;
public:
Тагове от реферата: добви, едяванет, наслане, едяване, повеч, ункции, компонент, възможност











