См. следующий код:
std::vector<int> v1{1, 2, 3};
std::vector<int> v2 = {1, 2, 3};
Мои вопросы:
Есть ли разница между ними? Я знаю, что первое должно быть инициализацией списка, но как насчет второго?
Поскольку для второго есть знак назначения, это заставляет меня думать, что компилятор сначала будет использовать
std::initializer_list
для создания временногоvector
, а затем использовать конструктор копирования для копирования временногоvector
вv2
. Это факт?