我有一门课,我必须实例化很多次。是这样的:
class A
{
public:
A() : a1(0.0f), a2(-1) {}
float a1;
int a2;
};
class B : public A
{
B();
float b;
};
我有两种方法来实现 B 的 ctor:
B(): A(), b(0.0f) {} // Using the base class ctor.
B(): b(0.0f) { a1 = 0.0f; a2 = -1; } // Not using the base class ctor. Ugly but maybe faster?
其中哪个更快?
我的成员类型在基类和继承类中都是基本的(int、float、double ...)。
编译器:英特尔和 LLVM。