项目一
来源:互联网 发布:linux应用开发实例 编辑:程序博客网 时间:2024/05/22 23:24
#include <iostream>#include <string>using namespace std;class StudentA //(1)修改studentA类中各数据成员和成员函数的访问限定符,并观察发生的现象{public: StudentA(int n,string nam,char s); void showA(); ~StudentA( ) { }protected: int num; string name; char sex ;};class StudentB: public StudentA //(2)修改此处的继承方式,并观察发生的现象{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<<endl;}int main( ) //(3)思考由于访问限定符和继承方式的改变,会引发什么现象的发生,并作出解释{ StudentB stud1(10010,"Wang-li",'f',19,"115 Beijing Road,Shanghai"); StudentB stud2(10011,"Zhang-fun",'m',21,"213 Shanghai Road,Beijing"); StudentA stud3(20010,"He-xin",'m'); stud1.showB( ); stud2.showA( ); stud3.showA( );system("pause"); return 0;}