[为C ++编辑]我不确定何时应该直接创建类或使用parent来初始化。 示例:
A类:B类
使用:
的
1)
A * a =新A();
2)
B * a =新A();
由于项目的要求,我必须使用2号。但我想知道什么是更好的表现???
如果数字2的性能不好,我会考虑使用数字1和更长的代码:(
我认为这是一个很好的答案:
Virtual functions and performance - C++
答案 0 :(得分:2)
Number 2 利用多态的强大功能。它使您能够实例化对象&将它们分配给超类引用类型。
这样,如果你有一个继承自抽象类C
的第三个类A
,你可以这样做:
class B : A
class C : A
A* bObj = new B();
A* cObj = new C();
对于性能比较,请检查以下链接: C++