我明白virtual
在成员函数的上下文中,例如virtual void frob()
。但它在类声明的上下文中意味着什么,比如class Foo : public virtual Bar
?
对于给定的方法,有 8 种情况源于以下三个位置是否存在 virtual:1)超类的函数; 2)该类的继承链; 3)该类的功能。
我想我理解 1) 和 3) 如何相互作用,但 2) 似乎是多余的。是吗?我不明白什么?
That's 虚拟继承 http://www.parashift.com/c++-faq-lite/multiple-inheritance.html#faq-25.9,当您知道您将进行多重继承时,您就可以这样做。该页面有更多详细信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)