纯虚函数在虚基类中也能有实现 的作用

提供一个默认的实现,但又不希望你直接用那个类。但这个默认的实现是可以在子类里,通过ParentClass::Method的方式调用。说白了,就是因为蛋疼。
■网友
至少基类析构函数在声明成纯虚函数的时候又得提供一个实现,否则链接的时候会挂。
■网友
鄙陋的实用主义说:有用就有意义,没用的东西再牛逼都不觉得,管他什么设计理念,我才没有那么崇高。
■网友
傲娇,提供一个,又不希望你用
■网友
之前看过这一节,我觉得书上写的很明确了,这样做的目的是:提供一个default实现,但是derived class was allowed to inherit that behavior only when explicitly saying that it wanted to
【纯虚函数在虚基类中也能有实现 的作用】 这样做的一个好处是,避免有些derived class中事实上不能够用base class的default实现,但是仅仅是因为忘记override而使用了base class的default实现。
当然,书中还提到了另一个可以到到同样功能的方法,那就是定义一个non virtual function来实现default功能,细节可以参考第34节。


    推荐阅读