C++学习杂记
来源:互联网 发布:nginx 锁定域名 编辑:程序博客网 时间:2024/06/07 17:33
定义的头文件:
class Girl 定义成虚拟基类,这样将禁止生成基类Girl的对象,同时把构造函数:不带参数的构造函数Girl( ) 、 带参
数的构造函数 Girl( string name , int height , int age, int weight ) 放在了protected作用域,进一步强调禁止在Girl类外创建基于
基类的对象,当然显式的把复制构造函数放在private域,也是有利无弊的。
class Beauty_girl : public Girl { }; 定义了一个Beauty_girl,从基类Girl公有派生而来,添加了四个新增加成员,
bool her_mettle ; //气质
bool her_culture ; //修养
bool her_kind_heart ; // 善良
bool her_virgin ;
此时基类Girl 的 public成员将隐式作为派生类Beauty_girl 的Public成员(注意,用的是隐式,可以理解为从基类到派生类对应作用域的映
射),此时派生类对象可在类外部直接调用公有继承的方法或数据成员。
同样基类Girl的protected成员将隐式作为派生类Beauty_girl的protected成员(过分强调一个问题,可能略显多余,但我觉得对比犯下隐
晦的难以发现的bug,这样还是有必要的 【隐式可以理解为从基类到派生类对应作用域的映射,至少我认为不会是直接的copy,那样是很影
响C++类封装的效率的】) 。
当然基类Girl的private成员将隐式作为派生类Beauty_girl的private成员,这时在类外访问private成员(数据或者方法)必须通过派生类
对应的接口(及public方法)来间接调用。
class Sex_girl 通过私有继承Beauty_girl派生而来,此时基类Beauty_girl的public/protected成员都将作为派生类Sex_girl的
私有(private)成员,此时在类外,通过派生类对象直接调用基类public成员是不被允许的。派生类对象可在类外通过派生类public成员方法
来间接访问基类的public/protected成员。
###上面是类的实现###
###下面是main()函数###
附注:语言难以阐释的,代码总是通用的。
##运行结果:
- C 语言学习(杂记)
- C#WPF应用程序学习杂记
- c语言学习中的杂记
- linux c 一站式学习 杂记
- 51单片机C语言学习杂记
- Objective-C学习杂记(1)
- 【C++、SQL学习笔记3】杂记
- c语言学习的的杂记
- C语言学习——数据类型杂记
- 学习杂记(一)c语言
- 学习杂记(二)c语言
- 学习杂记(三)c语言
- C杂记
- 学习杂记
- 学习杂记
- 学习杂记
- 学习杂记
- 学习杂记
- 可执行jar包的MANIFEST.MF
- 转:使用Office组件读取Excel,引用Microsoft.Office.Interop.Excel出现的问题
- 关于Spring的OpenSessionInViewFilter
- 转: asp.net Excel Import / Export
- 第一次哦
- C++学习杂记
- MyEclipse快捷键大全(绝对全)
- NOSQL-Cassandra
- 深入探讨JAVA类加载器
- [JavaScript] 数字金额大写转换 v2
- windows socket模型
- http://www.solidot.org/
- 一个简单的表格
- JSTL 标签使用 不断更新