C++有没有不使用虚表的适当接口实现?
例如:
class BaseInterface{
public:
virtual void func() const = 0;
}
class BaseInterfaceImpl:public BaseInterface{
public:
void func(){ std::cout<<"called."<<endl; }
}
BaseInterface* obj = new BaseInterfaceImpl();
obj->func();
在最后一行对func的调用会去vtable中查找BaseInterfaceImpl::func的函数指针,但是除了纯接口类BaseInterface之外,BaseInterfaceImpl没有从任何其他类继承。是否有任何C ++方法可以直接完成这个操作?
谢谢。
Gil。