C++继承
继承代表了一种is a 的关系。当创建一个类时,不需要重新编写新的数据成员和成员函数,只需指定新建的类继承已有类的成员即可。已有类叫基类,新类叫派生
类。
派生类可以访问基类的所有非私有成员。
继承类型包括公有继承,私有继承,保护继承。
公有继承:当一个派生自公有基类的时候,基类的公有成员也是派生类的公有成员
,基类的保护成员也是派生类的保护成员,基类的私有成员不可以被直接访问,但
是可以通过调用基类的保护成员和公有成员来访问。
私有继承:当一个类派生自私有基类的时候,基类的公有成员和保护成员分别也是
派生类的私有成员。
保护继承:当一个类派生自保护基类的时候,基类的公有成员和保护成员将是派生
类的保护成员。
#include<iostream>
using namespace std;
class box
{
public:
void setvalues(int a,int b)
{
width=a;
length=b;
}
protected:
int width;
int length;
};//基类
class bigbox
{
public:
int getnewvalues( int area)
{
return area*2;
}
};//基类
class mediabox:public box,public bigbox
{
public:
int getarea()
{
return width*length;
}
};//派生类
int main()
{
mediabox a;
int area;
a.setvalues(5,3);
area=a.getarea();
cout<<a.getarea()<<endl;//输出15
cout<<a.getnewvalues(area)<<endl;//输出30
return 0;
}