第十一週專案4-教師兼幹部類
阿新 • • 發佈:2019-02-04
問題及程式碼:
/* *Copyright (c) 2016,煙臺大學計算機學院 *All rights reserved. *檔名稱:zwj.cpp *作 者:張偉晶 *完成日期:2016年5月9日 *版 本 號:v1.0 * *問題描述:教師兼幹部類 *輸入描述: *程式輸出: */ #include<iostream> #include<string> using namespace std; //教師類 class Teacher { protected: string name; int age; string sex; string address; string tell; // 教師獨有的 string title; public: Teacher(string ,int ,string ,string ,string ,string ); void display(); }; // 教師類建構函式 Teacher::Teacher(string nam ,int a, string se,string add,string tel ,string tit):name(nam),age(a),sex(se),address(add),tell(tel),title(tit){} ///教師類的display void Teacher::display() { cout<<"姓名:"<<name<<endl; cout<<"年齡:"<<age<<endl; cout<<"性別:"<<sex<<endl; cout<<"職稱:"<<title<<endl; cout<<"地址:"<<address<<endl; cout<<"電話:"<<tell<<endl; } //幹部類 class Cadre { protected: string name; int age; string sex; string address; string tell; // 幹部類獨有的 string post; public: Cadre(string ,int ,string ,string ,string ,string ); }; // 幹部類建構函式 Cadre::Cadre(string nam ,int a, string se,string add,string tel ,string pos):name(nam),age(a),sex(se),address(add),tell(tel),post(pos){} /// 派生類 class Teacher_Cadre:public Teacher , public Cadre { private: double wages; public: Teacher_Cadre(string ,int ,string ,string ,string ,string ,string ,double); void show(); }; Teacher_Cadre::Teacher_Cadre(string nam,int a,string se,string add,string tel,string tit,string pos,double w):Teacher(nam,a,se,add,tel,tit),Cadre(nam,a,se,add,tel,pos),wages(w){} /// 派生類函式 void Teacher_Cadre::show() { Teacher::display(); cout<<"職務:"<<Cadre::post<<endl; cout<<"工資:"<<Teacher_Cadre::wages<<endl; } int main() { Teacher_Cadre zhang("味精加鹽",35,"女","BeiJing road 511","13365432505","一級教師","教授",8881.8); zhang.show(); return 0; }
執行結果:
知識點總結:
如果通過派生類對方訪問基類中被隱藏的同名成員,應使用基類名和作用域操作符(::)來限定
學習心得:
電話加“ ”