struct Test
{
Test(int a, int b)
: a_(a), b_(b) {}
int a_;
int b_;
};
Test ch1 = Test(1, 2); // #1
Test ch3 = Test({1, 2}); // #2
Test ch4 = Test{1, 2}; // #3
Test ch5(1, 2); // #4
Test ch6({1, 2}); // #5
Test ch7{1, 2}; // #6
Test ch8 = {1, 2}; // #7
Ребят, просветите, есть ли какая-то разница между инициализацией с разными скобками? Почему это всё работает?
Насколько я понимаю, у 4-5-6 не происходит копирование временного объекта.
(в контексте С++14)