Что быстрее при создании 100+ newObjs:Initialization Список Vs Статический Const Инициализация
//initialization list
struct struct_Obj {
...tonsOfVars
struct_Obj() : tonsOfVars(init) {}
}
Или:
//static const already constructed, call the copy constructor(?)
static const struct_Obj defaultStruct_Obj = { tonsOfVars(init) };
struct_Obj newObj = defaultStruct_Obj
TonsOfVars будет означать несколько различных переменных (от POD на структуры/классы)
Я бы предположил статический const, так как его вызов конструктора копирования (что означает 1 op?) Против вызова каждого инициализатора в списке инициализации?
Хотя общий ответ для этого - «профиль», даже это не даст мне объяснения ПОЧЕМУ это быстрее.
Если мне пришлось опасаться догадки, предполагая, что tonsOfVars являются примитивами, а ваш инициализатор будет инициализироваться значениями const, я бы сказал, что конструктор по умолчанию будет быстрее. – Kindread