📄 empfunc.cpp
字号:
//empfunc.cpp
#include<iostream.h>
#include<string.h>
#include"employee.h"
int employee::employeeNo=1000; //员工编号基数为1000
employee::employee()
{
char namestr[50]; //输入雇员姓名时首先临时存放在namestr中
cout<<"请输下一个入雇员的姓名:";
cin>>namestr;
name=new char[strlen(namestr)+1]; //动态申请用于存放姓名的内存空间
strcpy(name,namestr); //将临时存放的姓名复制到name
individualEmpNo=employeeNo++; //新输入的员工,其编号为目前最大编号加1
grade=1; //级别初值为1
accumPay=0.0; //月薪总额初值为0
}
employee::~employee()
{
delete name; //在析构函数中删除为存放姓名动态分配的内存空间
}
void employee::pay() //计算月薪,空函数
{
}
void employee::promote(int increment)
{
grade+=increment; //升级,提升的级数由increment指定
}
void employee::displayStatus() //显示人员信息,空函数
{
}
technician::technician()
{
hourlyRate=100; //每小时酬金100元
}
void technician::pay()
{
cout<<"请输入"<<name<<"本月的工作时数:";
cin>>workHours;
accumPay=hourlyRate*workHours; //计算月薪,按小时计酬
cout<<"兼职技术人员"<<name<<"编号"<<individualEmpNo
<<"本月工资"<<accumPay<<endl;
}
void technician::displayStatus()
{
cout<<"兼职技术人员"<<name<<"编号"<<individualEmpNo
<<"级别为"<<grade<<"级,已付本月工资"<<accumPay<<endl;
}
salesman::salesman()
{
CommRate=0.04; //销售提成比例4%
}
void salesman::pay()
{
cout<<"请输入"<<name<<"本月的销售额:";
cin>>sales;
accumPay=sales*CommRate; //月薪=销售提成
cout<<"推销员"<<name<<"编号"<<individualEmpNo
<<"本月工资"<<accumPay<<endl;
}
void salesman::displayStatus()
{
cout<<"推销员"<<name<<"编号"<<individualEmpNo
<<"级别为"<<grade<<"级,已付本月工资"<<accumPay<<endl;
}
manager::manager()
{
monthlyPay=8000; //固定月薪8000元
}
void manager::pay()
{
accumPay=monthlyPay; //月薪总额即固定月薪数
cout<<"经理"<<name<<"编号"<<individualEmpNo
<<"本月工资"<<accumPay<<endl;
}
void manager::displayStatus()
{
cout<<"经理"<<name<<"编号"<<individualEmpNo
<<"级别为"<<grade<<"级,已付本月工资"<<accumPay<<endl;
}
salesmanager::salesmanager()
{
monthlyPay=5000;
CommRate=0.005;
}
void salesmanager::pay()
{
cout<<"请输入"<<employee::name<<"所管辖部门本月的销售总额:";
cin>>sales;
accumPay=monthlyPay+CommRate*sales; //月薪=固定月薪+销售提成
cout<<"销售经理"<<name<<"编号"<<individualEmpNo
<<"本月工资"<<accumPay<<endl;
}
void salesmanager::displayStatus()
{
cout<<"销售经理"<<name<<"编号"<<individualEmpNo
<<"级别为"<<grade<<"级,已付本月工资"<<accumPay<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -