求大佬指点🧐,本题的main函数咋设置

 

代码修改如下,如有帮助,请采纳一下,谢谢。

#include<iostream>
#include<string>
using namespace std;
class CPerson
{ 
private:	
	string name;	
	char gender;//'F'代表女,'M'代表男	
	string number;	
	int age;	
	double salary;	
public:	
	virtual double GetPay()=0;	
	virtual void Print()=0;
	CPerson(string name,char gender,string number,int age, double salary) 
	{	
		this->name = name;	
		this->gender = gender;	
		this->number=number;	
		this->age=age;	
		this->salary=salary;	
	}
	string getName(){return name;}
	char getGender(){return gender;}
	string getNumber(){	return number;}
	int getAge(){return age;}
	double getSalary(){	return salary;}
};
class CBoss:public CPerson//老板实行年薪制,一年15万;
{
private:	
	int a;//a代表年薪
public:	
	virtual double GetPay();	
	CBoss(string name,char gender,string number,int age, double salary ,int as):CPerson(name,gender,number,age,salary){a = as;}
	virtual void Print()	
	{	
		cout<<"Boss"<<endl;	
		cout<<"name:"<<getName()<<endl;	
		cout<<"gender:"<<getGender()<<endl;	
		cout<<"numble:"<<getNumber()<<endl;	
		cout<<"age:"<<getAge()<<endl;	
		cout<<"salary:"<<GetPay()<<endl;	
	}
};
double CBoss::GetPay(){	return a;}
class CEmployee:public CPerson//雇员按月计酬,方法是基本工资+奖金;
{
private:	
	int b,j;//b代表基本工资,j代表奖金
public:	
	virtual double GetPay();	
	CEmployee(string name,char gender,string number,int age, double salary,int bs,int js):CPerson(name,gender,number,age,salary){b = bs; j = js;}
	virtual void Print()	
	{
		cout<<"Employee"<<endl;	
		cout<<"name:"<<getName()<<endl;	
		cout<<"gender:"<<getGender()<<endl;	
		cout<<"numble:"<<getNumber()<<endl;	
		cout<<"age:"<<getAge()<<endl;	
		cout<<"salary:"<<GetPay()<<endl;	
	}
};
double CEmployee::GetPay(){	return b+j;}
class CHourlyWorker:public CPerson//小时工按工作时间计算报酬,方法是工作小时*每小时单价;
{
private:	
	int h,d;//h代表工作小时,d代表每小时单价
public:	
	virtual double GetPay();	
	CHourlyWorker(string name,char gender,string number,int age, double salary,int hour,int dd):CPerson(name,gender,number,age,salary){h = hour; d = dd;};	
	virtual void Print()	
	{	
		cout<<"HourlyWorker"<<endl;	
		cout<<"name:"<<getName()<<endl;	
		cout<<"gender:"<<getGender()<<endl;	
		cout<<"numble:"<<getNumber()<<endl;	
		cout<<"age:"<<getAge()<<endl;	
		cout<<"salary:"<<GetPay()<<endl;	
	}
};
double CHourlyWorker::GetPay(){	return h*d;}
class CCommWorker:public CPerson//营销人员按月计酬,方法是基本工资+销售利润*5%。
{
private:	
	int b,p;//b代表基本工资,p代表销售利润
public:	
	virtual double GetPay();	
	CCommWorker(string name,char gender,string number,int age, double salary,int bs,int ps):CPerson(name,gender,number,age,salary){b = bs;p = ps;}	
	virtual void Print()
	{	
		cout<<"Commworker"<<endl;	
		cout<<"name:"<<getName()<<endl;	
		cout<<"gender:"<<getGender()<<endl;	
		cout<<"numble:"<<getNumber()<<endl;	
		cout<<"age:"<<getAge()<<endl;	
		cout<<"salary:"<<GetPay()<<endl;	
	}
};
double CCommWorker::GetPay(){return b+p*0.05;}
void main()
{
	CBoss b("hanhan",'F',"569842",26,15,15);	
	b.Print();	
	CEmployee e("fanhaidong",'M',"100625",45,0,15,12);	
	e.Print();	
	CHourlyWorker h("xiaohong",'F',"598462",19,0,5,23);	
	h.Print();	
	CCommWorker c("jinbao",'M',"4892015",18,0,24,30);	
	c.Print();
}

 

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632