gpt4 book ai didi

c++ - 我到底想做多少虚拟?

转载 作者:太空宇宙 更新时间:2023-11-04 14:38:38 25 4
gpt4 key购买 nike

我正在编写一个抽象父类(super class),其中每个方法都将被覆盖。我可以实现一些默认功能,但大多数时候将实现留给子类编写者就足够了。

由于几乎所有方法都将被覆盖,我应该将多少方法变为虚拟方法,又应该将多少方法保留为常规方法?目前的化身,一切都是虚拟的,但我还没有把它放出来给任何人使用,所以设计是灵活的。

虚函数有什么优点/缺点?链接到有关此的良好阅读 Material 将不胜感激。

最佳答案

虚函数调用比非虚函数调用慢,但如果您需要运行时多态性,别无选择。无论您有多少,虚函数调用的开销都大致恒定,因此几乎没有缺点。你可以看到很多专业类的设计——比如 IDirect3D9Device——在一个类中有很多很多虚方法。

关于c++ - 我到底想做多少虚拟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3063611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com