对于我的考试练习,我试图超载">"操作员检查左手边是否比右手边大。
需要比较两个不同班级的薪水。但只有PartTimeDoctor类具有" salary"变量。 FullTimeDoctor类有" baseSalary"与" salary"。
不同的变量最初的问题是,
将'大于'运算符重载为全局函数,它将两个Doctor对象作为参数,如果左侧医生对象的收入高于右侧医生,则返回true。
基类:
class Doctor {
protected:
string name, surname, expertise;
public:
Doctor();
void print();
void calcTotalPayment();
};
继承类:
class FullTimeDoctor : public Doctor {
private:
int baseSalary;
int feeShift;
public:
void setBaseSalary(int);
int getBaseSalary();
void setFeeShift(int);
int getFeeShift();
FullTimeDoctor();
void print();
void calcTotalPayment();
};
继承类
class PartTimeDoctor : public Doctor {
private:
int feePerEx;
int numOfEx;
int salary;
public:
PartTimeDoctor();
void setFeePerEx(int);
int getFeePerEx();
void setNumOfEx(int);
int getNumOfEx();
void calcTotalPayment();
void print();
};
我没有在这里添加cpp文件,但它们都没问题。那我怎么能做这个重载呢?提前谢谢。