1. 程式人生 > >第十一週專案4-教師兼幹部類

第十一週專案4-教師兼幹部類

問題及程式碼:

/*
 *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;
}

執行結果:

知識點總結:

如果通過派生類對方訪問基類中被隱藏的同名成員,應使用基類名和作用域操作符(::)來限定

學習心得:

  電話加“    ”