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

溫馨提示×

C++純虛函數怎樣實現

c++
小樊
82
2024-11-09 03:48:32
欄目: 編程語言

在C++中,純虛函數是在基類中聲明的虛函數,它沒有定義具體的實現。派生類必須提供這個純虛函數的具體實現,否則它們也將成為抽象類,無法實例化。

要實現一個純虛函數,只需在基類中的函數聲明后加上 “= 0”。例如:

#include <iostream>

// 基類 Shape
class Shape {
public:
    // 聲明一個純虛函數 area()
    virtual double area() const = 0;
};

// 派生類 Circle,繼承自 Shape
class Circle : public Shape {
public:
    // 實現基類中的純虛函數 area()
    double area() const override {
        double radius = 5.0;
        return 3.14159 * radius * radius;
    }
};

int main() {
    // 由于 Shape 是抽象類,無法實例化對象
    // Shape shape; // 錯誤

    // 創建一個指向 Shape 的指針,指向一個派生類(如 Circle)的對象
    Shape* shape = new Circle();

    // 調用 area() 函數
    std::cout << "圓的面積: " << shape->area() << std::endl;

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

在這個例子中,我們定義了一個名為 Shape 的基類,其中包含一個純虛函數 area()。然后,我們創建了一個名為 Circle 的派生類,繼承自 Shape,并實現了 area() 函數。在 main() 函數中,我們使用基類指針指向派生類對象,并調用 area() 函數。

0
垫江县| 华阴市| 桑日县| 和顺县| 乐平市| 龙岩市| 大连市| 梨树县| 凉山| 堆龙德庆县| 家居| 长阳| 开江县| 沭阳县| 辉县市| 策勒县| 天祝| 金阳县| 乐东| 杭锦后旗| 靖江市| 巴东县| 开封市| 三亚市| 伊宁县| 吉木乃县| 红原县| 宣恩县| 奉化市| 晋州市| 兴海县| 治县。| 天峻县| 古田县| 新宾| 睢宁县| 夹江县| 榆树市| 南阳市| 玉门市| 山阴县|