C++中的控制访问权限

C++中,类无权限,类成员有三个权限 ,类继承有三个权限,无包的概念。

C++的类本身没有权限,class A, 只要这么写就OK了。

类的成员有三个权限public, protected,private。权限为public的成员,可以在任何情况下访问,在类内,在类外(通常指类的实例化)都可以被访问。权限为private的成员,可以只可以在本类的实现中被访问,即使一个实例化的变量,也可以在相同的类的实现中,访问private的成员。权限为protected的成员,可以在本类的实现中和继承类的实现中被访问。

继承有三个权限,public ,protected ,private,如果class B: access A,

1) B绝对不可以访问A的private成员,但是可以任意访问A的public和protected成员

2)若access为public,则A中的public成员在B中呈现public状态(以下简写为:A public - B public)

A protected - B protected

3)若access为protected,则

A public - B protected

A protected- B protected

4)若access为private,则

A public - B private

A protected -B private

举例:

class A{

public :

A1 ;

protected :

A2 ;

private:

A3 ;

}

class B protected A{

public:

B1(){

A1 ;//可以任意访问A中的public和protected成员

A2 ;

}

}

void main(){

B b ;

b.B1()//允许,因为B1在类B中呈现public状态,public状态可以被任意访问

b.A1()//允许,因为A1在类B中呈现public状态,public状态可以被任意访问

b.A2()// 不允许,因为A1在类B中呈现protected状态,protected状态只能被实现类本身或者它的继承类访问

}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值