class Parent {
private:
int i;
public:
void show();
};
void Parent::show() {
cout<< "parent" << endl;
}
class Child : public Parent{
private:
int i;
public:
void show();
};
void Child::show() {
cout<<"child"<<endl;
}
main函数
// 静态多态 编译的时候确定的类型 由于声明的是Parent类型,所以编译的时候就会将其认定为parent类型
Parent* child = new Child();
child->show(); // 打印结果 Parent
virtual void show(); // 声明为虚函数
// 动态多态 使用虚函数
// 构造函数不要设置为虚函数
// 析构函数一般设置为虚函数
Parent* child = new Child();
child->show(); // 打印结果 Child
纯虚函数
virtual void show1() = 0; // 纯虚函数 子类必须实现 相当于JAVA的abstract方法