PP
Size: a a a
PP
AP
CD
AP
CD
CD
AP
struct A{}:
struct B: A { int a; };
auto [a] = B{42}; // Скомпилируется?
std::get<0>(B{42}); // Вернёт int или A ?
AP
CD
CD
struct A{}:
struct B: A { int a; };
auto [a] = B{42}; // Скомпилируется?
std::get<0>(B{42}); // Вернёт int или A ?
AP
auto [a] = B{42}; // Скомпилируется?
auto [a] = B{{}, 42}; // Скомпилируется?
auto [a,b] = B{42}; // Скомпилируется?
auto [a,b] = B{{}, 42}; // Скомпилируется?
CD
auto [a] = B{42}; // Скомпилируется?
auto [a] = B{{}, 42}; // Скомпилируется?
auto [a,b] = B{42}; // Скомпилируется?
auto [a,b] = B{{}, 42}; // Скомпилируется?
CD
AP
CD
struct A { int x = 0; int y = 0; };
struct B { int x = 0; int y = 0; };
struct C { A a; B b; int c; }; //всегда инициализируется
C{ {}, 0, 0 }; //имелось в виду C{ {}, {}, 0 };
МВ
CD
CD
auto [a] = B{42}; // Скомпилируется?
auto [a] = B{{}, 42}; // Скомпилируется?
auto [a,b] = B{42}; // Скомпилируется?
auto [a,b] = B{{}, 42}; // Скомпилируется?
B { .a = 42 };
B { .A = {}, .a = 42 };
CD
struct A{}:
struct B: A { int a; };
auto [a] = B{42}; // Скомпилируется?
std::get<0>(B{42}); // Вернёт int или A ?
auto [a] = B{{}, 42}; // Скомпилируется?