Вопрос про std::list uniform initialization
От: Максим Рогожин Россия  
Дата: 11.06.18 09:11
Оценка:
Привет!

#include <list>

class SomeClass {
public:
   SomeClass(int);
};

std::list<SomeClass> some_list{ SomeClass(1), SomeClass(2), SomeClass(3), SomeClass(4), SomeClass(5) };

int main() {
   return 0;
}


std::list для каждого нового объекта выделяет новую память (с помощью operator new) и помещает туда этот объект (и добавляет ссылки на предыдущий и следующий элементы). Но как это работает в данном случае — ведь еще не началось выполнение программы, а список some_list уже создан?
Отредактировано 11.06.2018 9:13 Максим Рогожин . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.