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

溫馨提示×

C++中如何生成多態對象

c++
小樊
83
2024-08-30 00:57:08
欄目: 編程語言

在C++中,要生成多態對象,需要使用基類指針或引用來指向派生類對象。這樣可以讓我們通過基類接口調用派生類的實現,實現多態行為。

下面是一個簡單的示例:

#include<iostream>

// 基類
class Animal {
public:
    virtual void makeSound() const {
        std::cout << "The animal makes a sound"<< std::endl;
    }
};

// 派生類1
class Dog : public Animal {
public:
    void makeSound() const override {
        std::cout << "The dog barks"<< std::endl;
    }
};

// 派生類2
class Cat : public Animal {
public:
    void makeSound() const override {
        std::cout << "The cat meows"<< std::endl;
    }
};

int main() {
    // 使用基類指針創建多態對象
    Animal* animal1 = new Dog();
    Animal* animal2 = new Cat();

    // 通過基類指針調用派生類的方法
    animal1->makeSound(); // 輸出 "The dog barks"
    animal2->makeSound(); // 輸出 "The cat meows"

    // 釋放內存
    delete animal1;
    delete animal2;

    return 0;
}

在這個示例中,我們定義了一個基類Animal和兩個派生類DogCat。基類中有一個虛函數makeSound(),派生類分別重寫了這個函數。在main()函數中,我們使用基類指針Animal*創建了多態對象,并通過基類接口調用了派生類的實現。這就是C++中多態對象的創建和使用方式。

0
平邑县| 厦门市| 囊谦县| 谷城县| 昌都县| 永平县| 萍乡市| 应用必备| 聂拉木县| 封丘县| 临西县| 博兴县| 旬邑县| 抚顺市| 吉安县| 凤翔县| 色达县| 湟源县| 陕西省| 巴中市| 荥经县| 陆川县| 太白县| 凤冈县| 简阳市| 旌德县| 杭锦旗| 黄大仙区| 布尔津县| 宣威市| 辽源市| 河津市| 洪江市| 靖宇县| 谢通门县| 衡南县| 林甸县| 道真| 芜湖市| 财经| 宝应县|