写了using namespace std;还报错_C++ 通过 using 声明改变个别成员的可访问性

(给CPP开发者加星标,提升C/C++技能)

来源:bu2 https://www.cnblogs.com/nowhszh/p/11194039.html

C++的语法中通过在派生类中使用using声明可以忽略继承方式 , 而让派生类对于基类的私有和保护成员具有特殊的访问权限 , 甚至可以改变派生类对象对于基类成员的访问权限 .

个人认为这种语法很容易让别人对于自己的代码产生误解 , 应该尽量少用或不用 . 为防止自己忘记 , 下面记录一下个人的理解 .

引用之C++ Primer5 P546

通过在类的内部使用using声明语句 , 我们可以将该类的直接或间接基类中的任何可访问成员标记出来(非私有成员) . using声明语句中名字的访问权限由该using声明语句之前的访问说明符来决定

白话文解释 : 在派生类的内部通过using声明语句 , 我们可以忽略继承方式 ,改变派生类中可访问的基类成员在派生类中的访问权限 . 

通过using声明改变类的继承方式

文字可能不好理解 , 看代码实例更容易体会

class Base
{
p
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值