|
ual char *GetPointer()=0;
};
Class Class1: public BaseClass
{
virtual char *GetPointer();
};
Class Class2:public BaseClass
{
virtual char *GetPointer();
};
void Function(BaseClass *pObj)
{
char *ptr=pObj->GetPointer();
}
如果Function()极其重视效率,我们应当把GetPointer从一个虚函数改成内联函数。一种方式是给BaseClass增加一个新的保护的数据成员,在每一个类中设置该成员的值,在GetPointer这个内联函数中返回该成员给调用者:
页码:[1] [2] [3] [4] [5] [6] [7] 第4页、共7页 |