#include<iostream>
using namespace std;
class base
{
public:
virtual void f(){}
};
class middle1:public base
{};
class middle2:public base
{};
class derive:public middle1,public middle2
{};
int main()
{
derive* pd=new derive();
pd->f();
return 0;
}
我知道 virtual 解决了这个问题,但是如何呢?即使我们没有多重继承,我们是否总是为了安全而编写公共虚拟。