Я пытаюсь выполнить некоторые тесты с помощью {} -листов. Когда я скомпилировал это в VS2015, вывод
copy A 0
Просто не получишь, где называется конструктор копирования?
#include <iostream>
struct A
{
A() = default;
A(int i) : m_i(i) {}
A(const A& a)
{
std::cout << "copy A " << m_i << std::endl;
}
int m_i = 0;
};
struct B
{
B(const A& a) : m_a(a) {}
B(const A& a1, const A& a2) {}
A m_a;
};
int main()
{
A a1{1}, a2{2};
B b({ a1, a2 });
return 0;
}