关于C++虚基类的问题,再线等,请高手门指教~~
我有一个虚基类,然后两个分别继承它,再有个类继承这两个类,结果,这最后这个类用虚基类的数据成员的时候提示成员不明确
error C2385: 'salesmanager::allMoney' is ambiguous
class people
{
protected:
int number;
char *name;
int grade;
double allMoney;
static int peopleNum;
public:
people();
~people(){}
virtual void display()=0;
virtual void proGrade(int addition);
};
class manager: public people
{
protected:
double baseSalary;
public:
manager(){}
manager(char *strName);
virtual void display();
virtual void proGrade(int addition);
};
class technician: virtual public people//虚基类防止二义性
{
private://不需要继承
double hourPay;
double hours;
public:
technician(char *strName);
virtual void display();
virtual void proGrade(int addition);
};
class salesman: virtual public people
{
protected:
double rate;
double salesMoney;
public:
salesman(){}
salesman(char *strName);
virtual void display();
virtual void proGrade(int addition);
};
class salesmanager: public manager,public salesman
{
protected:
double manageSaleMoney;//继承上面的
public:
salesmanager(char *strName);
virtual void display();
virtual void proGrade(int addition);
};
salesmanager不知道怎么用虚基类的属性和方法
[解决办法]
class manager : virtual public people
[解决办法]
同意yutaooo
别的你都知道加virtual,为什么唯独这个不加?这个也应该加上!
class manager: virtual public people