1.继承基础
2.子类调用析构函数顺序
3.继承中函数组合对象构造,析构函数调用
4.重写父类同名的函数
5.多重继承
#include <iostream>
#include <string>
using namespace std;
class big_dragon{
public:
string name;
int age;
void fly(){
cout <<name <<age<<"岁在飞翔"<< endl;
}
};
class small_dragon:public big_dragon{
public:
void fly(){
cout << name << age << "岁直飞"<< endl;
}
};
class fruit{
public:
string name;
string color;
fruit(){
cout << "父类构造 函数fruit"<<endl;
}
~fruit(){
cout << "父类析构函数fruit"<< endl;
}
};
class apple:public fruit{
public:
apple(){
cout << "子类构造函数apple"<< endl;
}
~apple(){
cout << "子类析构函数apple"<<endl;
}
};
class peach{
public:
peach(){
cout << "peach构造函数" << endl;
}
~peach(){
cout << "peach析构函数"<< endl;
}
};
class plum:public fruit{
public:
plum(){
cout << "plum构造函数"<<endl;
}
~plum(){
cout << "plum析构函数"<< endl;
}
peach p;
};
class father{
public:
father(){
cout << "father构造"<< endl;
}
void working(){
cout << "father上班"<< endl;
}
};
class mother{
public:
mother(){
cout << "mother构造"<< endl;
}
void cooking(){
cout << "mother做饭"<< endl;
}
};
class son:public father,public mother{
public:
};
int main() {
small_dragon s;
s.name = "小白龙";
s.age = 500;
s.fly();
apple a;
plum p;
son so;
so.cooking();
so.working();
return 0;
}