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

溫馨提示×

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
楚雄市| 巴彦淖尔市| 当涂县| 肇州县| 韶关市| 新津县| 莲花县| 安庆市| 乡宁县| 富源县| 芮城县| 南漳县| 河津市| 桐庐县| 措美县| 哈巴河县| 乳山市| 蓬安县| 巴马| 互助| 汉川市| 石棉县| 大竹县| 城口县| 湘阴县| 建始县| 呼和浩特市| 密云县| 珲春市| 顺昌县| 朝阳区| 沙湾县| 筠连县| 平遥县| 石门县| 都兰县| 昌邑市| 宽甸| 西峡县| 榆中县| 呼和浩特市|