to n6002,前面写的有点问题http://www.csdn.net/expert/Topic/182/182496.shtm
plato 2001-07-05 05:25:25 改成
class Base
{
public: virtual void do();
};
class Cooperate
{
public: virtual void cooperate();
}
class A: public Base, Cooprate{
public:
virtual void cooperate(){ this->do(); b->do(); }
void do(){ printf("a");}
}
class B: public Base, Cooperate{
public:
virtual void cooperate(){ this->do(); c->do(); }
void do(){ printf("b");}
}
class clsMain
{
public:
void doByControlOf(Cooperate *b)
{
b->cooperate();
}
}