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

📄 employee.h

📁 小型公司工资管理系统 工资的计算方法: A 经理:固定月薪为8000; B 技术员:工作时间*小时工资(100元每小时); C 销售员:销售额*4%提成; D 销售经理:底薪(5000)+所
💻 H
字号:
//"employee.h"
//类的定义
//雇员类
class Employee
{
 public:
  Employee(){}//缺省构造函数
 // ~Employee(){}
  friend void Input();//友元函数,用于访问各个类的私有成员
  friend void Statistic();
  friend void Output();
  friend void Back_up();
  friend void Arrange();
  static int place;//静态数据成员,用于员工的排名
 protected:
  int num,age;
  double month_pay;
  char name[10],position[10],sex[10];
   };
 int Employee::place=1;//设定静态成员的初始值
//技术员类
class Technition:public Employee//公有继承
{
 public:
  Technition()//缺省构造函数
  { hour_pay=100;}
  void Setwork_hour()
  {
   cout<<"请输入技术员的工作时间:"<<endl;
   cin>>work_hour;
  }   
  void Pay()//计算技术员每月工资
  { month_pay=hour_pay*work_hour;}//
friend void Input();//友元函数,用于访问各个类的私有成员
  friend void Statistic();
  friend void Output();
  friend void Arrange();
 protected:
  int hour_pay,work_hour;
};
//经理类
class Manager:virtual public Employee//雇员类为虚基类
{
 public:
	 Manager(){}//缺省构造函数
 void Pay()
 {month_pay=8000;}//经理每月工资
};
//销售员类
class Saleman: virtual  public Employee//雇员类为虚基类
{
 public:
    Saleman()
	{profit_rate1=0.04;}
	void Setsale_amount()
	{
     cout<<"请输入销售员的销售额:"<<endl;//设置销售员的销售额
	 cin>>sale_amount;
	}
    void Pay()
	{month_pay=sale_amount * profit_rate1;}//销售员每月工资
friend void Input();//友元函数,用于访问各个类的私有成员
  friend void Statistic();
  friend void Output();
  friend void Arrange();
 friend void Settotal_amount();//设置销售经理的销售总额
 protected:
	int sale_amount;
	double profit_rate1;
};
//销售经理类
class Salesmanager:public Manager,public Saleman//继承方式为多继承
{
 public:
	 Salesmanager() //缺省构造函数
	 {basic_pay=5000;
      profit_rate2=0.005;
      total_amount=0;
	 }
 void Pay()                  //销售经理每月工资
 {month_pay=basic_pay+ total_amount * profit_rate2;} 
 friend void Input();
 friend void Statistic();
 friend void Output();
 friend void Arrange();
 friend void Settotal_amount();
 static int place;
 double month_pay;
 protected:
	 //派生类的派生类,需定义其私有成员
	 int num,age,basic_pay,total_amount;
	 char name[10],position[10],sex[10];
	 double profit_rate2;

};
int Salesmanager::place=1;






⌨️ 快捷键说明

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