Pau*_*nta 4 c++ virtual inheritance
在C++中实现纯虚函数时,是否有最佳实践指南说实现也应该是虚拟的?理由是什么?
class Interface
{
public:
virtual void foobar() = 0;
};
class Concrete
: public Interface
{
public:
virtual void foobar();
};
Run Code Online (Sandbox Code Playgroud)
Jam*_*lis 13
不要紧.
void foobar()在Concrete是virtual,无论您声明它本身和它覆盖void foobar()的Interface.
虽然virtual关键字是否存在于派生类中并不重要,但我发现它是一个不可或缺的节省时间的自我记录练习,以便始终包含它,以便任何人在两年后使用您的代码现在马上可以看到,班级还有更多的东西,而不是眼前的东西.