12.1 理解基类中成员的访问限定符和派生类的限定方式
来源:互联网 发布:2015网络银行交易金额 编辑:程序博客网 时间:2024/06/01 21:14
程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 第十二周 任务一
* 作 者: 杨森
* 完成日期: 2012年 5 月 7 日
* 版 本 号: V 1.0
源程序:
#include <iostream>#include <string>using namespace std;class Student {public: Student(int n,string nam,char s) ;void show();~Student( ){ } protected: int num;string name;char sex ; };class Student1: protected Student { public: Student1(int n,string nam,char s,int a,string ad):Student(n,nam,s) {age=a; addr=ad;}void show1( );~Student1( ){ } private: int age; string addr; };Student::Student(int n,string nam,char s) {num=n;name=nam;sex=s; }void Student::show(){cout<<"num: "<<num<<endl;cout<<"name: "<<name<<endl;cout<<"sex: "<<sex<<endl<<endl;}//Student1::Student1(int n,string nam,char s,int a,string ad):Student(n,nam,s) void Student1::show1( ){cout<<"num: "<<num<<endl;cout<<"name: "<<name<<endl;cout<<"sex: "<<sex<<endl;cout<<"age: "<<age<<endl;cout<<"address: "<<addr<<endl<<endl;}int main( ){Student1 stud1(10010,"Wang-li",'f',19,"115 Beijing Road,Shanghai");Student1 stud2(10011,"Zhang-fun",'m',21,"213 Shanghai Road,Beijing");Student stud3(20010,"He-xin",'m');stud1.show1( ); stud2.show( ); stud3.show( ); system("pause");return 0;}
运行结果:
num: 10010name: Wang-lisex: fage: 19address: 115 Beijing Road,Shanghainum: 10011name: Zhang-funsex: mnum: 20010name: He-xinsex: m请按任意键继续. . .
将基类继承方式改为 protected 继承,错误提示为:
“Student::show”不可访问,因为“Student1”使用“protected”从“Student”继承
将基类继承方式改为 private 继承,错误提示为:
“Student::show”不可访问,因为“Student1”使用“private”从“Student”继承
小感:
当类的继承方式为私有继承时,基类的public成员和protected成员被继承后成为派生类的private成员,派生类的其它成员可以直接访问它们,但是在类的外部通过派生类的对象无法访问。
当类的继承方式为公有继承时,基类的public成员和protected成员被继承到派生类中仍作为派生类的public成员和protected成员,派生类的其它成员可以直接访问它们。
当类的继承方式为保护继承时,基类的public成员和protected成员被继承到派生类中都作为派生类的protected成员,派生类的其它成员可以直接访问它们,但是类的外部使用者不能通过派生类的对象访问它们。
- 12.1 理解基类中成员的访问限定符和派生类的限定方式
- 理解基类中成员的访问限定符和派生类的继承方式
- 理解基类中成员的访问限定符和派生类的继承方式
- 理解基类中成员的访问限定符和派生类的继承方式
- 13_1理解基类中成员的访问限定符和派生类的继承方式
- 第十二周任务1:理解成员的访问限定符和派生类的继承方式
- 第十二周实验指导--任务1--理解基类中成员的访问限定符和派生类的继承方式
- 第十二周任务一理解基类中成员的访问限定符和派生类的继承方式
- 十二周实验报告任务1 理解基类中成员的访问限定符和派生类的继承方式。
- 《C++第十二周实验报告1-1》----理解基类中成员的访问限定符和派生类的继承方式
- 第12周任务1(理解基类中成员的访问限定符和派生类的继承方式)
- C++第十二周【任务1】理解基类中成员的访问限定符和派生类的继承方式
- 第十二周任务一 理解基类中成员的访问限定符和派生类的继承方式
- 第十二周C++【任务1】理解基类中成员的访问限定符和派生类的继承方式
- 第十三周上机任务项目1-理解基类中成员的访问限定符和派生类的继承方式
- 第十三周项目一—理解基类中成员的访问限定符和派生类的继承方式
- 第十三周 项目一:理解基类中成员的访问限定符和派生类的继承方式
- C++第十三周任务-项目一(理解基类中成员的访问限定符和派生类的继承方式)
- 扩展巴科斯范式
- 递推、错排公式
- 实用小方法
- ASP.NET MVC模式 温习(一)排除MVC模式误区
- ZZULI 1679 Switch
- 12.1 理解基类中成员的访问限定符和派生类的限定方式
- 小论万花筒法则(一)
- 提交form会提示下载用JSON返回的以Action为名字的信息,怎么解决这个问题
- PHP垃圾回收机制
- 设计模式
- 2012C++程序设计实验报告【12.2】
- 两个字符串中匹配最大字符串
- VC高级调试方法-条件及数据断点的设定
- 正则表达式语法及常用正则表达式