|
|
发表于 2006-8-16 22:21:00
|
显示全部楼层
Re:一个关于派生类函数的调用问题,请朋友们看看
class base
{
public:
virtual void doSomeThing()=0;
};
class first:public base
{
public:
void doSomeThing(){cout<<"TEST SOMETHING"<<endl;}
};
class Manager
{
protected:
base *m_lpObject;
public:
void Add(base *pObject){m_lpObject = pObject;}
void Show(){m_lpObject->doSomeThing();}
};
Manager objTest;
first objFirst;
void TestSomeThing()
{
objTest.Add(&objFirst);
}
int _tmain(int argc, _TCHAR* argv[])
{
TestSomeThing();
objTest.Show();
return 0;
}
我改了一下你的程序。其实可以在全局使用objFirst,也可以new first,在你需要的地方。你可以在你需要的时候new一个first(或者base的派生类),再把它添加到Manager里面。 |
|