class Base { public: virtual void fun(){} int i_; }; class Derived : virtual public Base { public: //Derived(){} void fun(){} double d_; };