C++第十三周任务-项目一(理解基类中成员的访问限定符和派生类的继承方式)
2013-05-24 14:31
906 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称:score.cpp * 作 者: 王锴英 * 完成日期: 2013 年 05 月 24 日 * 版本号: v1.0 * 输入描述: * 问题描述:派生与继承 * 输出: */ //派生类B对基类A的继承 #include <iostream> using namespace std; class StudentA { public: StudentA(int n,string nam,char s); void showA(); ~StudentA(){} protected: int num; string name; char sex; }; class StudentB:public StudentA { public: StudentB(int n,string nam,char s,int a,string ad); void showB(); ~StudentB(){}//析构函数 private: int age; string addr; }; StudentA::StudentA( int n,string nam,char s) { num=n; name=nam; sex=s; } void StudentA::showA() { cout<<"num:"<<num<<endl; cout<<"name:"<<name<<endl; cout<<"sex:"<<sex<<endl<<endl; } StudentB::StudentB(int n,string nam,char s,int a,string ad):StudentA(n,nam,s) { age=a; addr=ad; } void StudentB::showB() { cout<<"num:"<<num<<endl; cout<<"name:"<<name<<endl; cout<<"sex:"<<sex<<endl; cout<<"age:"<<age<<endl; cout<<"address:"<<addr<<endl; } int main() { StudentB stud1(10010,"Wang-li",'f',19,"115 Beijing Road,Shanghai"); StudentB stud2(10011,"Zhang-fun",'m',21,"213 Shanghai Roadm,Beijing "); StudentA stud3(20010,"He-xin",'m'); stud1.showB(); stud2.showA(); stud3.showA(); return 0; }
运行结果:
尝试改变:
1.修改studentA类,将protected改为public后,结果不变。
2.修改studentA类,将protected改为private后,出现错误:
error: 'int StudentA::num' is private|。
3.修改B类的继承方式,将public改为protected后,出现错误:
error: 'StudentB::StudentB(int, std::string, char, int, std::string)' is protected
4.修改B类的继承方式,将public改为private后,出现错误:
error: 'StudentB::StudentB(int, std::string, char, int, std::string)' is private
5.将main函数的“stud3.showA()”改为“[b]stud3.showB()”后出现错误:[/b]
error: 'class StudentA' has no member named 'showB'
6.[b]将main函数的“stud1.showB()”改为“stud1.showA()后,结果为:[/b]
7.[b]将main函数的“stud2.showA()”改为“stud2.showB()”后,结果为:[/b]
相关文章推荐
- 第十三周上机任务项目1-理解基类中成员的访问限定符和派生类的继承方式
- 第十三周项目一—理解基类中成员的访问限定符和派生类的继承方式
- 第十三周—【项目1】理解基类中成员的访问限定符和派生类的继承方式
- C++第十二周【任务1】理解基类中成员的访问限定符和派生类的继承方式
- 第十三周 项目一:理解基类中成员的访问限定符和派生类的继承方式
- 第十二周C++【任务1】理解基类中成员的访问限定符和派生类的继承方式
- 第十二周任务一 理解基类中成员的访问限定符和派生类的继承方式
- 第13周项目一-理解基类中成员的访问限定符和派生类的继承方式
- 第十二周实验指导--任务1--理解基类中成员的访问限定符和派生类的继承方式
- 《C++第十二周实验报告1-1》----理解基类中成员的访问限定符和派生类的继承方式
- 第十二周任务二(理解基类成员的访问限定符和派生类的继承方式)
- 十二周实验报告任务1 理解基类中成员的访问限定符和派生类的继承方式。
- 第十二周任务一理解基类中成员的访问限定符和派生类的继承方式
- 第12周任务1(理解基类中成员的访问限定符和派生类的继承方式)
- 【项目1 - 长颈鹿类对动物类的继承】理解基类中成员的访问限定符和派生类的继承方式
- 13周项目一.1(理解基类中成员的访问限定符和派生类的继承方式)
- 理解基类中成员的访问限定符和派生类的继承方式
- 理解基类中成员的访问限定符和派生类的继承方式
- 5月8日实验报告(一)理解基类成员的访问限定符和派生类的继承方式
- 继承项目第13周-项目1-基类中成员的访问限定符和派生类的继承方式