04類的繼承和派生設(shè)計(jì)公司職員信息管理_第1頁
04類的繼承和派生設(shè)計(jì)公司職員信息管理_第2頁
04類的繼承和派生設(shè)計(jì)公司職員信息管理_第3頁
04類的繼承和派生設(shè)計(jì)公司職員信息管理_第4頁
04類的繼承和派生設(shè)計(jì)公司職員信息管理_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第 4 章 使用類的繼承和派生設(shè)計(jì)公司職員信息管理4.5 源程序代碼程序有三部分組成,employee.h 是類定義頭文件,employee.cpp 是類實(shí)現(xiàn)文件,Manager.cpp 是主函數(shù)文件。1類定義頭文件/employee.h/職員類 employee 的定義class employeeprotected:char * name;int individualEmpNo;int grade;float accumPay;static int employeeNo;public:employee();employee();void pay();void prompt(int);void

2、 displayStatus();/姓名/個人編號/級別/月薪總額/本公司職員編號最大值/構(gòu)造函數(shù)/析構(gòu)函數(shù)/計(jì)算月薪/升級函數(shù)/顯示人員信息/*/技術(shù)人員類technician 的定義class technician:virtual public employee protected:double jianjin;int fenshu;public:technician();void pay();void displayStatus();/獎金/績效分?jǐn)?shù)/構(gòu)造函數(shù)/計(jì)算月薪/顯示人員信息/*/銷售人員類salesman類的定義class salesman:virtual public emp

3、loyeeprotected:double CommRate;double sales;public:salesman();void pay();void displayStatus();/按銷售額提取酬金的百分比/當(dāng)月銷售額/構(gòu)造函數(shù)/計(jì)算月薪/顯示人員信息;/*/經(jīng)理類manager的定義class manager:virtual public employeeprotected:float monthlyPay;public:manager();void pay();void displayStatus();/固定月薪/構(gòu)造函數(shù)/計(jì)算月薪/顯示人員信息;/*/銷售經(jīng)理類salesmana

4、ger的定義class salesmanager: public manager,public salesmanpublic:salesmanager();void pay();void displayStatus();/構(gòu)造函數(shù)/計(jì)算月薪/顯示人員信息;/*/技術(shù)經(jīng)理類techmanager的定義class techmanager: public manager,public technicianpublic:techmanager();void pay();void displayStatus();/構(gòu)造函數(shù)/計(jì)算月薪/顯示人員信息;/*/2類實(shí)現(xiàn)文件/employee.cpp#inclu

5、de #include #include employee.hint employee:employeeNo =1;/員工編號基數(shù)為1/*/employee 類的構(gòu)造函數(shù) employee:employee() char namestr50;coutnamestr;/動態(tài)申請用于存放姓名的內(nèi)存/編號加1/級別初始值為1/月薪總額初值為0name=new charstrlen(namestr)+1;strcpy(name,namestr);individualEmpNo=employeeNo+;grade=1;accumPay=0.0;/*/employee 類的析構(gòu)函數(shù)employee:emp

6、loyee ()delete name;/*/employee 類的工資函數(shù)void employee:pay()/*/employee 類的員工提升函數(shù)void employee:prompt(int increment)grade+=increment;/*/employee 類的顯示級別函數(shù)void employee:displayStatus ()/*/technician 類的構(gòu)造函數(shù) technician:technician() jianjin=10;/獎金每分為10 元fenshu=0;/*/technician 類的工資函數(shù)void technician:pay ()cout

7、 請輸入技術(shù)人員namefenshu;accumPay=3000+jianjin*fenshu;/技術(shù)人員的工資/cout 技術(shù)人員name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/technician 類的顯示級別函數(shù)void technician:displayStatus () cout 技術(shù)人員name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/salesman類的構(gòu)造函數(shù) salesman:salesman() /銷售提成比例1 CommRate=0.01

8、; /*/salesman類的工資函數(shù)void salesman:pay()cout 請輸入銷售人員namesales;accumPay=sales*CommRate;/ cout 銷售人員name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/salesman的顯示級別函數(shù) void salesman:displayStatus ()cout 銷售人員name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/manager類的構(gòu)造函數(shù)manager:manager()mont

9、hlyPay=10000;/*/manager類的工資函數(shù)void manager:pay () accumPay=monthlyPay;/ cout 總經(jīng)理 name 編號 individualEmpNo/ 級別為 grade 級,已付本月工資accumPayendl; /*/manager類的顯示級別函數(shù)void manager:displayStatus () cout 總經(jīng)理 name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/salesmanager類 的構(gòu)造函數(shù) salesmanager:salesmanager()

10、monthlyPay=4000;CommRate=0.005; /*/salesmanager類的工資函數(shù) void salesmanager:pay () cout 請輸入銷售經(jīng)理employee:namesales;accumPay=monthlyPay+CommRate*sales;/ cout 銷售經(jīng)理name 編號 individualEmpNo/ 級別為 grade 級,已付本月工資accumPayendl; /*/salesmanager類的顯示級別函數(shù) void salesmanager:displayStatus ()cout 銷售經(jīng)理name 編號 individualEm

11、pNo 級別為 grade 級,已付本月工資accumPayendl;/*/techmanager類的構(gòu)造函數(shù) techmanager:techmanager() monthlyPay=5000;,*/techmanager類的工資函數(shù)void techmanager:pay () cout 請輸入技術(shù)經(jīng)理namefenshu;accumPay=monthlyPay+jianjin*fenshu;/技術(shù)人員的工資/ cout 技術(shù)經(jīng)理name 編號 individualEmpNo/ 級別為 grade 級,已付本月工資accumPayendl; /*/techmanager類的顯示級另1J函數(shù)void techmanager:displayStatus() cout 技術(shù)經(jīng)理name 編號 individualEmpNo 級別為 grade 級,已付本月工資accumPayendl;/*/3主函數(shù)實(shí)現(xiàn)文件/Manager.cpp#include #include employee.h /*/主函數(shù)mainint main()manager m1; technician t1;salesmanager sm1;salesman s1;techmanager tm1;mpt (4);m1.pay();m1.displayStatus ();t1.p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論