91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

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
普定县| 安仁县| 比如县| 石城县| 乐安县| 吉安市| 乌海市| 屏东县| 靖西县| 扎鲁特旗| 太原市| 庆阳市| 广宁县| 阜城县| 广元市| 保德县| 台前县| 思南县| 通城县| 陆良县| 沁水县| 满洲里市| 清丰县| 宿州市| 巴林左旗| 政和县| 东丰县| 梨树县| 抚宁县| 巩留县| 九龙县| 崇阳县| 通化市| 南部县| 广丰县| 中西区| 武鸣县| 玉田县| 平塘县| 桃园市| 绍兴县|