C++:我们应该从父类初始化类还是直接调用类

C++ : Should we init class from parent or call directly class?

本文关键字:调用 初始化 父类 我们 C++      更新时间:2023-10-16

[edited for C++]我不确定什么时候应该直接创建类或使用parent初始化。示例:

A类:B类

使用:

1)
A*A=新的A()

2)
B*a=新的a()

由于项目的要求,我不得不使用数字2。但我想知道什么对性能更好
如果数字2的性能不好,我会考虑使用带有更长代码的数字1:(

我认为这是一个很好的答案:
虚拟功能和性能-C++

Number 2利用多态性的力量。它使您能够实例化对象&将它们分配给超级类引用类型。

这样,如果您有从抽象类A继承的第三个类C,您可以执行以下操作:

class B : A
class C : A
A* bObj = new B();
A* cObj = new C();

有关性能比较,请查看此链接:C++