什么是自动括号列表语法?

时间:2017-01-10 12:58:59

标签: c++ c++17 auto decomposition

W.F.对我的问题here提供了一个现已删除的答案,其中使用了以下行:

auto [x, y] = div_t{ 1, 0 };

从答案中的代码看起来像tie结构的div_t。我希望有人能解释这里发生的事情。完整的功能代码如下:

constexpr bool first_quot() {
    auto [x, y] = std::div_t{1, 0};
    (void)y;
    return x;
}

1 个答案:

答案 0 :(得分:7)

在大多数most recent draft of the C++17 specification中,它被称为“分解声明”,并在第8.5节[dcl.decomp]中定义。