理论上是否可以添加语言功能来将结构解压缩到函数实际参数列表中?我的意思是以下。
Ethernet
处理未知成员数量的合适结构会很方便。因为当前的结构化绑定无法打开&#34;解包&#34;由于缺少模板上下文而导致组件数量未知的结构(如template< typename ...Ts >
void f(Ts... values) { (std::cout << ... << values) << std::endl; }
struct S { int a; char c; double d; };
S s{1, '2', 3.0};
f([s]);
void g(int, int, int) {}
g([s]); // warning about narrowing conversion
void h(int &, int &, int &) {}
h([s]); // hard error ("cannot bind to...")
),其中只有auto... [x] = s;
可以处理可变数量的类型/值。
这样可以带来什么缺点?