派生类到基类转换的可访问性

qq1041256623 2014-04-10 10:50:15

访问规则:
1.如果是 public 继承,则用户代码和后代类都可以使用派生类到基类的转换。
2.如果类是使用 private 或 protected继承派生的,则用户代码不能将派生类型对象转换为基类对象。
3.如果是 private 继承,则从 private 继承类派生的类不能转换为基类。
4.如果是 protected 继承,则后续派生类的成员可以转换为基类类型。
5.无论是什么派生访问标号,派生类本身都可以访问基类的 public 成员,因此,派生类本身的成员和友元总是可以访问派生类到基类的转换。

用户代码指的是什么,是类对象吗?
...全文
190 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
昵称很不好取 2014-04-10
  • 打赏
  • 举报
回复
应该就是用户写的代码 例如 class A{}; class B:private A{}; A = B(); 这样是不允许的
罗博士 2014-04-10
  • 打赏
  • 举报
回复
简单而言C++程序员分为两种人(其实无论什么语言都可以这样分)。一种人是类的制造者,譬如写MFC的、写QT的那些人;另一种是类的使用者。譬如使用MFC开发windows程序的,或者使用QT开发可视化程序的。用户就是指后一种人。 当然这两种人并不是一定要指两个人,有时候同一个人或者同一个软件公司可能会既充当第一种人也充当第二种人。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧