亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C++派生類的多態如何實現

c++
小樊
84
2024-08-06 06:17:11
欄目: 編程語言

C++中派生類的多態是通過虛函數和虛函數表實現的。在基類中聲明一個虛函數,然后在派生類中重寫這個虛函數,就可以實現多態。

具體來說,當一個指向基類的指針或引用調用一個虛函數時,實際上會調用指向派生類對象的虛函數。這是因為每個對象都有一個虛函數表,存儲了該對象的虛函數地址,通過這個虛函數表可以實現動態綁定,實現多態性。

以下是一個簡單的示例:

#include <iostream>

class Base {
public:
    virtual void print() {
        std::cout << "Base::print() called" << std::endl;
    }
};

class Derived : public Base {
public:
    void print() override {
        std::cout << "Derived::print() called" << std::endl;
    }
};

int main() {
    Base* basePtr = new Derived();
    basePtr->print(); // 輸出 Derived::print() called

    delete basePtr;
    return 0;
}

在上面的示例中,基類Base中聲明了一個虛函數print(),派生類Derived重寫了這個虛函數。在main()函數中,我們用一個指向基類對象的指針basePtr指向一個派生類對象,并調用print()函數,最終輸出的是Derived::print() called,實現了多態。

0
梓潼县| 罗山县| 巩义市| 昌邑市| 阳朔县| 上思县| 含山县| 玛沁县| 洞口县| 丹棱县| 阜宁县| 屏南县| 潼南县| 贺兰县| 天祝| 井冈山市| 射洪县| 双柏县| 留坝县| 策勒县| 喜德县| 百色市| 来宾市| 南安市| 东辽县| 固原市| 万安县| 乌拉特中旗| 仁布县| 邵阳市| 竹北市| 青州市| 盐池县| 桦甸市| 大方县| 喀喇沁旗| 林周县| 桓台县| 北碚区| 石楼县| 汶上县|