序幕:
std::tuple<int, int, int> f();
std::tuple<int, int, float, int> g();
C++1z 将引入结构化绑定的语法,这将使编写而不是
int a, b, c;
std::tie(a, b, c) = f();
就像是
auto [a, b, c] = f();
但是, std::tie
也允许指定 std::ignore
以忽略某些组件,例如:
std::tie(a, b, std::ignore, c) = g();
是否可以使用新的结构化绑定语法做类似的事情?它将如何运作?
原文由 jotik 发布,翻译遵循 CC BY-SA 4.0 许可协议
结构化绑定提案包含一个专门的部分来回答您的问题 ( P0144R2 ):
但是请注意,该标准的工作草案目前正在由相关国家机构 (NB) 进行修订,并且有一条 NB 评论要求此功能( P0488R0 ,US100):