1. 程式人生 > 遊戲資訊 >艾爾登法環第三種進亞壇高原和王城的路線

艾爾登法環第三種進亞壇高原和王城的路線

純虛擬函式和抽象類

在多型中,通常父類中虛擬函式的實現是毫無意義的,主要都是呼叫子類重寫的內容

因此可以將虛擬函式改為純虛擬函式

純虛擬函式語法:virtual 返回值型別 函式名 (引數列表)= 0 ;

當類中有了純虛擬函式,這個類也稱為==抽象類==

抽象類特點

  • 無法例項化物件
  • 子類必須重寫抽象類中的純虛擬函式,否則也屬於抽象類
class Base
{
public:
    //純虛擬函式
    //類中只要有一個純虛擬函式就稱為抽象類
    //抽象類無法例項化物件
    //子類必須重寫父類中的純虛擬函式,否則也屬於抽象類
    virtual void func() = 0;
};

class Son :public Base { public: //重寫的時候virtual也可以不寫 virtual void func() { cout << "func呼叫" << endl; }; }; void test01() { Base* base = NULL; //base = new Base; // 錯誤,抽象類無法例項化物件 base = new Son; base->func(); delete base;//記得銷燬 Son s; s.func(); }
int main() { test01(); system("pause"); return 0; }