标题已经说明了一切。为什么需要在基类中定义一个可能会被重写的函数?
这样,如果您想从基类派生出一个行为不同的版本,则必须修改基类,并且您没有考虑在基类中标记该特定函数为虚函数。
据我所知,在Java中,您可以通过使用override来解决此类抽象定义(尽管我目前只对Java略有了解),这对我来说似乎更自然。C++中的这种扭曲是为了强制程序员提前思考,还是由于某种技术原因造成的?
这样,如果您想从基类派生出一个行为不同的版本,则必须修改基类,并且您没有考虑在基类中标记该特定函数为虚函数。
据我所知,在Java中,您可以通过使用override来解决此类抽象定义(尽管我目前只对Java略有了解),这对我来说似乎更自然。C++中的这种扭曲是为了强制程序员提前思考,还是由于某种技术原因造成的?