#include <string>
using namespace std;
class employee
{
public:
string name;
string id;
double wage;
virtual void print()=0;
virtual double earnings()=0;
};
class salariedemployee:public employee
{
public:
void print()
{
cout<<"salariedemployee wage:"<<wage<<endl;
}
double earnings()
{
return wage;
}
};
class hourlyemployee:public employee
{
public:
double hours;
void print()
{
cout<<"hourlyemployee wage:"<<wage*hours<<endl;
}
double earnings()
{
return wage*hours;
}
};
基類是employee,定義的虛函數=0使得基類成為抽象類
兩個派生類分別是salariedemployee和hourlyemployee