我想知道以下代码的作用:
for (auto x:m) std::cout << x << " ";
我已经知道这auto
是一种让编译器决定变量类型的方法,但我不知道是什么:m
。
m
是遵循范围概念(即容器概念)的任何类型。
循环遍历m
wherex
表示当前迭代值的所有元素。
这是此处描述的基于 C++11 范围的for
循环语法:http ://www.cprogramming.com/c++11/c++11-ranged-for-loop.html
这里m
应该是一个容器,比如 std::vector。代码将迭代容器并将每个元素(x
在循环内访问)放入std::cout
流中。元素将由空格分隔。