继承是什么意思呢?就是说本来定义了一个类,比如Student:
class Student
{public:
void display() //对共有成员函数display的定义
{cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
}
private: //Student 中的私有成员数据
int num;
string name;
char sex;
};
如果不凑巧,类外一个部门除了上面类中的name,number,sex外,还要用到age、address等
怎么办呢?当然可以重新定义个类,把所有的信息都放进去。但显然,人类这种懒惰的人不想这么做。。。于是,就诞生了派生类。
假设已经声明了一个基类Student(上面写的),再此基础上通过单继承建立一个派生类Student1:
class Student1:public Student //声明基类是Student
{public:
void display_1() //新增加的成员函数display_1
{cout<<"age"<<age<<endl;
cout<<"address:"<<addr<<endl;}
private:
int age; //新增加的数据成员
string addr;
};
第一行:class Student1:public Student
看出声明派生类一般形式:
class 派生类名:[继承方式] 基类名
{
派生类新增成员
};
继承方式包括:public(公用的),private(私有的)和protected(受保护的),如不写,则默认为private。