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

溫馨提示×

C++繼承機制如何設置訪問權限

c++
小樊
82
2024-11-08 23:40:27
欄目: 編程語言

在C++中,繼承機制允許我們創建一個新類(派生類)來繼承另一個類(基類)的屬性和方法。為了控制基類成員在派生類中的訪問權限,我們可以使用訪問修飾符(public, protected, 和 private)。

以下是如何在C++中設置繼承機制中的訪問權限的示例:

#include <iostream>

// 基類
class Base {
public:
    // 公共成員
    void publicMember() {
        std::cout << "This is a public member of Base class." << std::endl;
    }

protected:
    // 受保護的成員
    void protectedMember() {
        std::cout << "This is a protected member of Base class." << std::endl;
    }

private:
    // 私有成員
    void privateMember() {
        std::cout << "This is a private member of Base class." << std::endl;
    }
};

// 派生類
class Derived : public Base {
public:
    // 公共成員
    void publicMember() {
        std::cout << "This is a public member of Derived class." << std::endl;
    }

    // 受保護的成員
    void protectedMember() {
        std::cout << "This is a protected member of Derived class." << std::endl;
    }

    // 使用基類的私有成員(無法直接訪問)
    void accessPrivateMember() {
        // Base base; // 錯誤:無法在派生類外部創建基類的實例
        Base::privateMember(); // 正確:使用基類名稱訪問私有成員
    }
};

int main() {
    Derived d;
    d.publicMember(); // 正確:派生類可以訪問基類的公共成員
    // d.protectedMember(); // 錯誤:派生類無法直接訪問基類的受保護成員
    // d.privateMember(); // 錯誤:派生類無法直接訪問基類的私有成員

    d.accessPrivateMember(); // 正確:通過基類名稱訪問私有成員

    return 0;
}

在這個示例中,我們創建了一個名為Base的基類,其中包含公共成員、受保護成員和私有成員。然后,我們創建了一個名為Derived的派生類,它繼承自Base類。在派生類中,我們可以訪問基類的公共成員和受保護成員,但不能直接訪問基類的私有成員。如果需要訪問基類的私有成員,我們可以使用基類名稱進行訪問。

0
波密县| 寻乌县| 濮阳县| 池州市| 拉萨市| 马尔康县| 乐至县| 渭南市| 益阳市| 漳平市| 阿拉善右旗| 西充县| 怀远县| 嵩明县| 灌南县| 宝兴县| 台安县| 永州市| 大埔区| 双鸭山市| 安康市| 吉木萨尔县| 黔西县| 苗栗县| 武强县| 鸡东县| 辽宁省| 河津市| 静乐县| 五台县| 棋牌| 玉门市| 贺州市| 岳阳市| 民县| 滨州市| 鹰潭市| 布尔津县| 拉萨市| 高安市| 西城区|