c++:实现公司员工计算薪资功能

该博客详细介绍了如何使用C++设计和实现公司的员工薪资计算系统,涵盖了经理、技术人员、销售人员和销售经理四种角色的薪资计算逻辑。员工工号随着新增员工自动递增,薪资计算基于各自的角色特性,如销售经理结合了固定工资和销售提成。通过虚继承减少代码重复,并利用静态成员变量跟踪员工总数和销售总额。

1、首先明确Person.h里面的内容

(1)公司职员包括:经理Manager、技术人员Technician、销售SalesMan、销售经理SaleManager。

(2)当每增加一个员工,对应的员工工号就加一。

(3)薪资:经理每月固定工资8000元;技术人员每天300元,根据工作天数计算工资;销售人员每月工资是个人销售总额的4%;销售经理每月工资是部门销售总额的2%,再Sale加上固定的工资4000元。

(4)销售经理SaleManager既有固定薪水又有提成,所以直接让它继承Manager和SaleMan;为了减省代码和空间,将manager和SaleMan都是虚继承。

(5)c++中没有java中接口这个概念,可以用纯虚函数实现接口 。

(6)为了计算销售人员的数目,用了两个静态成员变量,一个用来计算总人数,来获取工号,一个用来计算销售总额。

#ifndef _PERSON_H
#define _PERSON_H
#include<iostream>
#include<string.h>
using namespace std;

class Person
{
protected:
    static int count;
    string m_name;
	double m_salary;     //访问权限定义为保护类型是为了能被继承下去
	int m_id;            //工号
public:
	virtual void print() = 0;
	virtual double Get() = 0;        //纯虚函数
};

class Manager : virtual public Person     
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值