📄 empfunc.cpp
字号:
#include<iostream.h>
#include<string.h>
#include"employee.h"
int employee::employeeNo=1000;
employee::employee()
{
char namestr[50];
cout<<"请输入下一个雇员的名字:";
cin>>namestr;
name=new char[strlen(namestr)+1];
strcpy(name,namestr);
individualEmpNo=employeeNo++;
grade=1;
accumpay=0.0;
}
employee::~employee()
{
delete name;
}
void employee::promote(int increment)
{
grade+=increment;
}
technician::technician()
{
hourlyrate=100;
}
void technician::promote(int)
{
employee::promote(2);
}
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;
}
void salesman::promote(int)
{
employee::promote(0);
}
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;
}
void manager::promote(int)
{
employee::promote(3);
}
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::promote(int)
{
employee::promote(2);
}
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 + -