什么类型的自动用于容器?

时间:2013-06-28 09:37:33

标签: c++ c++11 types auto

通过在C ++中使用不同的容器,我可以实现相同的输出。例如 。 。

    std::array<int, 5> v = {1,2,3,4,5};
    for(auto i : v)
        std::cout << i << ", ";

    std::vector<int> v = {1,2,3,4,5};

    int v[] = {1,2,3,4,5};
等等。 。

那么auto在这里使用什么容器?

    auto v = {1,2,3,4,5};
    for(auto i : v)
        std::cout << i << ", ";

1 个答案:

答案 0 :(得分:19)

std::initializer_list<int>


自己检查并不难,您可以随时decltype(v),然后将其与所述列表类型进行比较。

这有另一个不错的属性,有时非常有用,可能会让你感兴趣:

for (auto i : {1,2,3,4,5})
    std::cout << i << ", ";

可以这样做,因为initializer_list保留了标准范围界面。