C++ 访问修饰符

概述

C++中的访问修饰符用于控制类成员(包括数据成员,成员函数)的可见性和可访问性。 C++中有三种访问级别:public, private, protected。下面一个一个说下。

public

  • public 成员可以被任何访问类的对象或引用的代码访问。它们是类与外部世界交互的主要方式。
  • 任何继承自该类的子类也可以访问public成员。

private

  • private成员只能在类的内部访问,即它们不能被类的外部代码访问,也不能被任何子类访问。
  • private成员是封装的一部分,它们隐藏了类的实现细节,只允许通过类的公共接口进行操作。

protected

  • protected成员可以被类的内部访问,也可以被继承类访问,但不能被类的外部访问。
  • 这允许继承类访问基类的protected成员,但保持了对外部代码的封装。

示例代码


访问修饰符的默认行为取决于类本身是否被声明为public、private或protected。如果一个类没有显式指定访问修饰符,它默认是private的,这意味着你不能从类的外部访问它的成员。

下面来个简单的示例吧,代码如下:

class Base {
public:
    void publicFunc() {} // 公共成员函数

private:
    void privateFunc() {} // 私有成员函数

protected:
    void protectedFunc() {} // 受保护的成员函数
};

class Derived : public Base {
public:
    void test() {
        publicFunc(); // 可以访问基类的公共成员
        protectedFunc(); // 可以访问基类的受保护的成员
        // privateFunc(); // 错误:不能访问基类的私有成员
    }
};

int main() {
    Base b;
    b.publicFunc(); // 可以访问
    // b.privateFunc(); // 错误:不能访问
    // b.protectedFunc(); // 错误:不能访问

    Derived d;
    d.publicFunc(); // 可以访问
    d.protectedFunc(); // 可以访问
    // d.privateFunc(); // 错误:不能访问
}

小结

这篇主要写的是访问修饰符,public,private,protected,以及它们的使用情况。当然,还是要看具体的实际情况的。感兴趣,可以一起来学习学习。OK,这篇结束。翻篇!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值