有一个工厂有三类人:固定工资工人A、计件工人B、计时工人C。
构建基类:工厂员工Worker类(包括三个成员数据:名字name(字符串string)、住址address(字符串string)、工资salary(long int);包括成员函数:构造与析构函数(在构造函数中对名字与住址赋值)、输出函数printInfo()用于输出成员的名字、住址、工资),成员函数getSalary()用于计算工人工资。
构建派生类:
固定工资工人A对应派生类AWorker
计件工人B对应派生类BWorker(除了从基类中继承的成员函数与成员数据,新增成员数据:数量totalNumbers(long int)和每件提成every(long int),成员函数:getSalary()用B的工资计算方式对工资赋值)
计时工人C对应派生类CWorker(除了从基类中继承的成员函数与成员变量,新增成员变量:时间totalHours(long int)和每小时工资every(long int),成员函数:getSalary()用C的工资计算方式对工资赋值)
三类员工的工资计算方法不同:
固定工资工人,每个月领的工资是不变的(long int);
计件工人根据生产的产品数量计算工资:数量(long int)*每件提成(long int);
计时工人根据工作的时间长短计算工资:时长(long int)*每小时工资(long int)。
在main函数中根据输入创建不同的员工,并依次输出每个员工的名字、住址、工资等信息。
要求使用多态。
【输入形式】
第一行:A的名字 A的住址 A的工资
第二行:B的名字 B的住址 总件数 每件提成
第三行:C的名字 C的住址 时长 每小时工资
【输出形式】
输出一共三行,每行格式:
name:名字,address:地址,salary:工资
【样例输入】
A a 123
B b 2 3
C c 5 6
【样例输出】
name:A,address:a,salary:123
name:B,address:b,salary:6
name:C,address:c,salary:30