コンストラクターと初期化リストの間で実行時間に違いはありますか?(またはコーディングの好みの問題ですか)。頻繁に作成する必要があるオブジェクトのセットがあり、コンストラクターの代わりに初期化リストを使用することでパフォーマンスが向上するかどうかを知りたいです。
クラス A のインスタンスを 100 万個作成し、クラス B の別の 100 万個のインスタンスを作成する場合、どちらを選択するのがよいでしょうか (オブジェクトはネットワーク内で生成されたパケットを表すため、これらの数値が表示されます)。
class A {
private:
int a, b;
public:
A(int a_var, int b_var):a(a_var), b(b_var) {};
};
class B {
private:
int a, b;
public:
B(int a_var, int b_var) {
a = a_var;
b = b_var;
}
};
コンストラクターのいずれかがプリミティブ型の他のコンストラクターよりも高速である場合 (例のように)、a と b を型に置き換えると高速になりますか?
タイプ例:
class AType {
private:
string a, b;
public:
AType(string a_var, string b_var):a(a_var), b(b_var) {};
};