91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

如何在c++中實現base類的多態

c++
小樊
82
2024-09-04 18:37:55
欄目: 編程語言

在C++中,實現基類(Base Class)的多態性可以通過虛函數(Virtual Functions)和純虛函數(Pure Virtual Functions)來完成。多態是面向對象編程的一個重要特性,它允許我們使用基類類型的指針或引用來操作派生類對象。

以下是一個關于如何在C++中實現基類的多態性的示例:

#include<iostream>

// 基類(Base Class)
class Shape {
public:
    // 虛函數(Virtual Function)
    virtual void draw() {
        std::cout << "Drawing a shape"<< std::endl;
    }
};

// 派生類(Derived Class)
class Circle : public Shape {
public:
    void draw() override {
        std::cout << "Drawing a circle"<< std::endl;
    }
};

// 派生類(Derived Class)
class Rectangle : public Shape {
public:
    void draw() override {
        std::cout << "Drawing a rectangle"<< std::endl;
    }
};

int main() {
    Shape* shape1 = new Circle();
    Shape* shape2 = new Rectangle();

    shape1->draw(); // 輸出 "Drawing a circle"
    shape2->draw(); // 輸出 "Drawing a rectangle"

    delete shape1;
    delete shape2;

    return 0;
}

在這個示例中,我們定義了一個基類Shape,其中包含一個虛函數draw()。然后,我們創建了兩個派生類CircleRectangle,它們分別重寫了draw()函數。在main()函數中,我們使用基類指針分別指向派生類對象,并調用draw()函數。由于draw()函數是虛函數,因此會根據派生類的實現進行調用,實現了多態性。

0
砀山县| 鹰潭市| 囊谦县| 莱西市| 天等县| 常山县| 加查县| 永新县| 雅安市| 故城县| 武宁县| 理塘县| 石景山区| 东安县| 个旧市| 喀什市| 锡林郭勒盟| 清流县| 望江县| 南靖县| 涞水县| 原平市| 康马县| 衡阳市| 石楼县| 平昌县| 灌云县| 洛川县| 新安县| 体育| 潮州市| 绩溪县| 南川市| 玉田县| 封开县| 吉林省| 南雄市| 宜良县| 松桃| 运城市| 武平县|