class employee
{
protected:
char name[20];
int individualEmpNo; //个人编号
int grade; //级别
float accumPay; //月薪
static int employeeNo; //本公司职员编号目前最大值
public:
employee();
~employee();
void SetName(char *); //设置姓名函数
char * GetName(); //提取姓名函数
void promote(int); //升级函数
void SetaccumPay(float); //设置月薪函数
int GetindividualEmpNo(); //提取编号函数
int Getgrade(); //提取级别函数
float GetaccumPay(); //提取月薪函数
};
int employee::employeeNo=1000; //员工编号级数为1000
employee::employee()
{
individualEmpNo=employeeNo++; //员工编号目前最大编号为1000
grade=1; //级别初值为1
accumPay=0.0; //月薪总额初值为0
}
employee::~employee() {}
void employee::SetName(char * names) //设置姓名
{
strcpy(name,names);
}
char* employee::GetName() //提取姓名
{
return name;
}
void employee::promote(int increment)
{
grade+=increment; //升级,提升的级数由increment指定
}
void employee::SetaccumPay(float pa)
{
accumPay=pa; //设置月薪
}
int employee::GetindividualEmpNo()
{
return individualEmpNo; //获取成员编号
}
int employee::Getgrade()
{
return grade; //获取级别
}
float employee::GetaccumPay()
{
return accumPay; //获取月薪
}
#include<iostream>
using namespace std;
int main()
{
employee emp[4];
char namestr[20];
float pa;
int grade,i;
for(i=0;i<4;i++)
{
cout<<"请输入下一个雇员姓名:";
cin>>namestr;
emp[i].SetName(namestr);
cout<<"请输入雇员月薪:";
cin>>pa;
emp[i].SetaccumPay(pa);
cout<<"请输入雇员的提升级别:";
cin>>grade;
emp[i].promote(grade);
}
//显示信息
for(i=0;i<4;i++)
{
cout<<emp[i].GetName()<<"编号"<<emp[i].GetindividualEmpNo()<<"级别为"<<emp[i].Getgrade()
<<"级,本月工资"<<emp[i].GetaccumPay()<<endl;
}
}