通过在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 << ", ";
答案 0 :(得分:19)
std::initializer_list<int>
自己检查并不难,您可以随时decltype(v)
,然后将其与所述列表类型进行比较。
这有另一个不错的属性,有时非常有用,可能会让你感兴趣:
for (auto i : {1,2,3,4,5})
std::cout << i << ", ";
可以这样做,因为initializer_list
保留了标准范围界面。