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方法