YM
Size: a a a
YM
О
О
VG
VG
VG
О
VG
О
О
VG
required<T>
, получается удобный способ делать именованные параметры, часть из которых можно пометить обязательными, а часть со значениями по умолчанию.struct FunctionArgs {А использование:
required<A> a;
required<B> b;
C c = C(1);
D d = D(false);
};
void function(FunctionArgs &&args) {
use_a(*args.a);
use_b(std::move(*args.b));
use_c(args.c);
use_d(std::move(args.d));
}
function({
.a = A(10),
.b = B(),
.d = D(true),
});
VG
VG
VG
AK
AK
О
AK
AK