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

溫馨提示×

C++成員函數指針在多態中如何使用

c++
小樊
84
2024-06-20 00:54:16
欄目: 編程語言

在C++中,成員函數指針可以用于實現多態性。多態性是面向對象編程的一個重要特性,允許不同的類對象對同一個消息做出不同的響應。使用成員函數指針可以在運行時動態地選擇要調用的函數,從而實現多態性。

下面是一個簡單的例子,演示了如何使用成員函數指針實現多態性:

#include <iostream>

class Base {
public:
    virtual void print() {
        std::cout << "Base class" << std::endl;
    }
};

class Derived : public Base {
public:
    void print() {
        std::cout << "Derived class" << std::endl;
    }
};

int main() {
    Base baseObj;
    Derived derivedObj;

    void (Base::*ptr)() = &Base::print; // 定義一個指向Base類的成員函數的指針

    (baseObj.*ptr)(); // 調用Base類的print函數
    (derivedObj.*ptr)(); // 調用Derived類的print函數

    return 0;
}

在上面的例子中,我們定義了一個基類Base和一個派生類Derived。Base類中有一個虛擬函數print,Derived類重寫了這個函數。然后我們在主函數中定義了一個指向Base類的成員函數print的指針ptr,通過該指針可以在運行時動態地選擇要調用的函數。

通過上面的例子,可以看到成員函數指針在多態性中的應用。它可以讓我們在運行時根據對象的實際類型調用不同的函數,實現了多態性的特性。

0
游戏| 福建省| 岳西县| 佛教| 江口县| 巴南区| 赞皇县| 稻城县| 文安县| 华安县| 丽江市| 曲沃县| 罗甸县| 沁水县| 长葛市| 河西区| 龙游县| 临沂市| 石棉县| 巴塘县| 武定县| 盈江县| 新龙县| 潜江市| 象州县| 吉安市| 肇州县| 任丘市| 鸡西市| 军事| 临高县| 石棉县| 凤山县| 潮安县| 南澳县| 时尚| 南召县| 杭锦旗| 长沙县| 临猗县| 婺源县|