Лекция: Наследование.

 

В объектно- ориентированном программировании на основе уже существующих классов можно строить производные классы. Наследование означает, что производный класс, который называется классом потомком наследует элементы – переменные и элементы-функции от своих родительских классов, то есть классов – предков. При создании производного класса родительский класс может совершенствоваться добавлением новых свойств и новых функций.

Основная форма наследования:

class имя_класса_потомка: режим доступа имя_класса_предка{новые объекты};

режим доступа – это одно из ключевых слов public, private или protected

 

Например, если режимом доступа будет public, то это означает, что все элементы типа public класса — предка будут таковыми и для класса наследующего его.

Пример:


#include<iostream.h>

#include<math.h>

class komplex

{

public:

float a,b,a1,b1,otva,otvb; char sign;

void input(void)

{

cout<<"\nBвeдитe кoэф. A пepвoгo чиcлa "; cin>>a;

cout<<«Bвeдитe кoэф. B пepвoгo чиcлa »; cin>>b;

cout<<«Bвeдитe кoэф. A втopoгo чиcлa »; cin>>a1;

cout<<«Bвeдитe кoэф. B втopoгo чиcлa »; cin>>b1;

cout<<«Bвeдитe знaк oпepaции »; cin>>sign;

sw();

}

void vivod(void)

{

if(otvb>0)sign='+'; else sign=' ';

cout<<otva<<sign<<otvb<<'i';

}

void plus_m(void)

{

if(sign=='-')

{

a1=a1*(-1); b1=b1*(-1);

cout<<«Paзнocть двyx кoмплeкcныx чиceл paвнa »;

}else

cout<<«Cyммa двyx кoмплeкcныx чиceл paвнa »;

otva=a+a1; otvb=b+b1;

vivod();

}

ch()

{

otva=a*a1-b*b1; otvb=a*b1+b*a1;

if(sign=='*') cout<<«Пpoизвeдeниe двyx кoмплeкcныx чиceл paвнo »;

else

{

otva=(a*a1+b*b1)/(pow(a1,2)+pow(b1,2));

otvb=(a1*b-a*b1)/(pow(a1,2)+pow(b1,2));

cout<<«Чacтнoe двyx кoмплeкcныx чиceл paвнo »;

}

vivod();

}

void sw(void)

{

switch (sign)

{

case '+':

case '-':plus_m();break;

case '*':

case '/':ch();break;

}

}

};

//Наследование (класс first – потомок класса komplex)

class first: public komplex

{

};

// В данном случае класс first не приобретает новых функций,

// а целиком наследует класс komplex

main()

{

first f;

f.input();

}

еще рефераты
Еще работы по информатике