在c ++中使用纯虚函数的主体有什么用?

Ash*_*wyn 0 c++

除了可以从派生类重写方法调用它之外,纯虚函数似乎无法在任何地方调用!那么,它的使用是什么?例如.

class base
{
    public:
    virtual void fun()=0
    {
        cout<<"I have been called from derived class"<<endl;
    }
};
class derived:public base
{
    public:
    void fun()
    {
        cout<<"I am the derived class"<<endl;
        base::fun();

    }
};
void main()
{
    derived d;
    d.fun();
}
Run Code Online (Sandbox Code Playgroud)

Nav*_*een 5

它以您在问题中提到的确切方式使用,有一些可以由派生类重用的常见逻辑,但同时您希望强制派生类为非公共部分提供实现.