2010年12月份C++笔记

本文探讨了 C++ 中的继承机制,重点介绍了派生类如何访问基类的 protected 成员,并通过具体例子展示了基类与派生类之间的访问权限差异。此外,还讨论了类的不同用户角色及其在继承中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

c++primer 的笔记

1、关于继承

 

派生类只能通过派生类对象访问其基类的 protected 成员,派生类对其基类类型对象的 protected 成员没有特殊访问权限。

 

例如,假定 Bulk_item 定义了一个成员函数,接受一个 Bulk_item 对象的引用和一个 Item_base 对象的引用,该函数可以访问自己对象的 protected 成员以及 Bulk_item 形参的 protected 成员,但是,它不能访问 Item_base 形参的 protected 成员。

     void Bulk_item::memfcn(const Bulk_item &d, const Item_base &b)
     {
         // attempt to use protected member
         double ret = price;   // ok: uses this->price
         ret = d.price; // ok: uses price from a Bulk_item object
         ret = b.price; // error: no access to price from an Item_base
     }

d.price 的使用正确,因为是通过 Bulk_item 类型对象引用 priceb.price 的使用非法,因为对 Base_item 类型的对象没有特殊访问访问权限。

 

2、类的用户

类有3种用户:类本身、类的用户和类的派生类。

 

3、一个继承的例子:

父类:

 

派生类:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值