1、虛函數:為了重載和多態的需要,在基類中是有定義的,即便定義是空,所以子類中可以重寫也可以不寫基類中的此函數。
2、純虛函數:在基類中是沒有定義的,必須在子類中加以實現。
例:
class Father
{
public:
virtual void func_1(){} //虛函數
virtual void func_2()=0; //純函數
}
class Child
{
public:
void func_1(); //可重寫,也可不,重寫格式可以和父類不同
void func_2(); //必須重寫,而且格式必須和父類保持一致
}