面向对象课程设计-人员信息管理系统:
以一个小型公司的人员管理为例,说明类及成员函数的设计。提示:
- 类的设计:
某小型公司,需要存储雇员的编号、级别、月薪,并显示全部信息。根据这些需求,设计一个类employee,在该类中,包括的数据成员有:
编号(int individualEmpNo)
级别(int grade)
月薪(float accumPay)
成员函数有:
设置编号(void setEmpNo(int steps)):编号顺序加1(利用静态变量实现)
提取编号(void getEmpNo)
晋升级别(void promote(int increment)):提升的级别由参数指定
提取级别(int getGrade)
设置月薪(void SetAccumPay(float pa)):
提取月薪(float GetAccumPay)
构造函数(用于设置数据成员编号、级别和月薪初值)
析构函数 - 整个程序分为两个独立的文档:employee.h(包含类的定义和类的实现)和employee.cpp(主函数文件)
- 在主函数main()中创建employee类的两个对象,对它们设计编号、级别和月薪,并输出每个雇员的基本信息。
/*人员信息管理系统:
以一个小型公司的人员管理为例,说明类及成员函数的设计。提示:
1) 类的设计:
某小型公司,需要存储雇员的编号、级别、月薪,并显示全部信息。根据这些需求,设计一个类employee,在该类中,包括的数据成员有:
编号(int individualEmpNo)
级别(int grade)
月薪(float accumPay)
成员函数有:
设置编号(void setEmpNo(int steps)):编号顺序加1(利用静态变量实现)
提取编号(void getEmpNo)
晋升级别(void promote(int increment)):提升的级别由参数指定
提取级别(int getGrade)
设置月薪(void SetAccumPay(float pa)):
提取月薪(float GetAccumPay)
构造函数(用于设置数据成员编号、级别和月薪初值)
析构函数
2) 整个程序分为两个独立的文档:employee.h(包含类的定义和类的实现)和employee.cpp(主函数文件)
3) 在主函数main()中创建employee类的两个对象,对它们设计编号、级别和月薪,并输出每个雇员的基本信息。*/
#include<iostream>
using namespace std;
//以下是雇员类的声明
class employee
{
public:
employee();
employee(employee&e);
void setEmpNo(int);
int getEmpNo()
{
return individualEmpNo;
}
void promote(int);
int getGrade()
{
return grade;
}
void SetAccumPay(float);
float GetAccumPay()
{
return accumPay;
}
~employee()
{
//cout<<"析构函数被调用"<<endl;
}
private:
int individualEmpNo;//编号
static int numOfEmp;
int grade;//级别
float accumPay;//月薪
};
//以下是雇员类的成员函数的实现
int employee::numOfEmp=0;//设置静态变量
void employee::setEmpNo(int steps)//按照不同的steps
{
grade=steps;
numOfEmp++;
individualEmpNo+=numOfEmp;
}
void employee::promote(int increament)
{
grade=grade+increament;
//cout<<"employee::promote(int increament)被调用"<<endl;
}
void employee::SetAccumPay(float pa)//调整月薪