中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C++多態性怎樣實現類型隱藏

c++
小樊
81
2024-11-09 02:27:29
欄目: 編程語言

在 C++ 中,多態性是通過虛函數實現的。要實現類型隱藏,可以使用基類指針或引用來指向派生類對象。這里有一個簡單的例子來說明如何實現類型隱藏:

#include <iostream>

// 基類 Shape
class Shape {
public:
    // 虛函數 area()
    virtual double area() const {
        return 0.0;
    }
};

// 派生類 Circle,繼承自 Shape
class Circle : public Shape {
public:
    Circle(double radius) : radius_(radius) {}

    // 重寫基類的虛函數 area()
    double area() const override {
        return 3.14159 * radius_ * radius_;
    }

private:
    double radius_;
};

int main() {
    // 使用基類指針指向派生類對象
    Shape* shape = new Circle(5.0);

    // 調用虛函數 area(),實現多態性
    std::cout << "Area: " << shape->area() << std::endl;

    delete shape; // 釋放內存
    return 0;
}

在這個例子中,我們定義了一個基類 Shape 和一個派生類 CircleCircle 類繼承自 Shape 類,并重寫了基類的虛函數 area()。在 main() 函數中,我們使用基類指針 shape 指向派生類對象 Circle。當我們調用 shape->area() 時,C++ 會根據對象的實際類型(這里是 Circle)來調用相應的 area() 函數,實現了多態性。同時,由于基類指針指向派生類對象,實現了類型隱藏。

0
怀来县| 贺州市| 岢岚县| 鄂温| 高雄市| 江阴市| 新丰县| 伊通| 旬阳县| 榆中县| 虹口区| 山西省| 青田县| 娱乐| 屏东县| 绩溪县| 隆尧县| 南投市| 崇阳县| 昌江| 舞阳县| 沙雅县| 宝山区| 安福县| 安徽省| 依安县| 赤城县| 拜城县| 茂名市| 民县| 砀山县| 宁安市| 马公市| 始兴县| 蚌埠市| 陇南市| 肥东县| 绵阳市| 永丰县| 德江县| 杭锦后旗|