没有继承时如何使用虚函数

3

如果没有涉及到继承,是否有必要使用虚函数?根据我的理解和知识水平,我认为虚函数或关键字与继承紧密相关。我对吗?除了基类和派生类之外,还有什么地方需要使用虚函数吗?


1
简而言之,没有其他地方。虚函数是C++多态性的一部分,这涉及到继承的使用。我想不出在没有继承的情况下需要它的用例。 - Patrick Roberts
有趣的是,根据回答的确切问题(我是对的,其他情况),“是”和“否”都是正确的。 - stefaanv
3个回答

8

没错,你是对的。 甚至更进一步:虚函数只有在运行时多态时才需要,而这只是继承所涉及的一部分。


3

不,你说得对,在继承之外没有使用虚函数的用途,因为虚函数是专门设计用来允许派生类“覆盖”基类函数(通常通过调用它们并进行额外处理来扩展它们)。


1

虚函数仅在需要运行时多态性的情况下使用。使用虚函数确保调用正确版本(基类/派生类)的方法,并且根据调用者对象的类型在运行时解析调用。更多信息请参见虚函数

是的,您的理解是正确的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接