可能重复:
C++ 中的私有虚拟方法
如果我从这篇文章( C++ 中的私有虚拟方法)中理解正确,那么在基类中创建一个虚拟函数会使派生类能够覆盖它。但似乎事情到此为止了。
但是如果基类虚函数是纯的,那会强制派生类实现该函数。因此,纯(公共)虚函数只是一个接口。我可以在这里看到一个好处。
另一方面,通过将基类虚函数设为私有,只赋予派生类覆盖该函数的能力,但我看不出这样做有什么好处。就好像那个私有虚拟功能甚至不存在一样。派生类显然不知道基类中存在该虚拟函数,因为它是私有的,那么在继承或多态方面声明基类私有函数虚拟有什么好处?
另外,在任何情况下,基类会声明一个函数“纯虚拟”和“私有”吗?
谢谢你。