⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 employee.cpp

📁 C++课程设计
💻 CPP
字号:
///////////////////////////////////////////////////////////////
///////////////////////employee.cpp//////////////////
#include<iostream>
#include<cstring>
#include"employee.h"
#include<fstream>
using namespace std;
int startno()
{
	int totalno=0;
	empstu employee1;
	ifstream infile("employee.txt",ios_base::in);
	infile.seekg(ios::beg);
	if(infile.fail())
		return 0;
	infile.read((char*)&employee1,sizeof(empstu));
	while(!infile.eof())
	{
		if(employee1.state==1)
			totalno++;
		infile.read((char*)&employee1,sizeof(empstu));
	}
	return totalno;
}

int employee::employeeNo=1000+startno();
employee::employee()
{
	individualEmpNo=++employeeNo;
	grade=1;
	accumPay=0.0;
}
employee::~employee()
{}
void employee::promote(int increment)
{
	grade+=increment;
}
void employee::SetName(char *names)
{
	strcpy(name,names);
}
char *employee::GetName()
{
	return name;
}
void employee::SetaccumPay(float pa)
{
	accumPay=pa;
}
int employee::GetindividualEmpNo()
{
	return individualEmpNo;
}
int employee::Getgrade()
{
	return grade;
}
float employee::GetaccumPay()
{
	return accumPay;
}
technician::technician()
{
	hourlyRate=100;
}
void technician::SetworkHours(int wh)
{workHours=wh;}
void technician::pay()
{accumPay=hourlyRate*workHours;}
void technician::promote(int)
{employee::promote(1);}
salesman::salesman()
{CommRate=0.04;}
void salesman::Setsales(float sl)
{sales=sl;}
void salesman::pay()
{accumPay=sales*CommRate;}
void salesman::promote(int)
{employee::promote(0);}
manager::manager()
{monthlyPay=8000;}
void manager::pay()
{accumPay=monthlyPay;}
void manager::promote(int)
{employee::promote(3);}
salesmanager::salesmanager()
{monthlyPay=5000;
CommRate=0.005;}
void salesmanager::pay()
{accumPay=monthlyPay+CommRate*sales;}
void salesmanager::promote(int)
{employee::promote(2);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -