我在" cplusplus.com"上找到了这段代码片段(有点修改过)。 std::vector::emplace
的参考(参见http://www.cplusplus.com/reference/vector/vector/emplace/)
我已经经常使用lists
,我知道auto
关键字。
但我不理解for循环的头部。
代码:
#include <iostream>
#include <list>
int main ()
{
std::list<int> list;
list.emplace_back(100);
list.emplace_back(200);
std::cout << "list contains: ";
for (auto& x: list)
std::cout << "(" << x << ") ";
return 0;
}
输出:list contains: (100) (200)
答案 0 :(得分:1)
在评论中指出,它是for-each loop
。循环字面意思是for each x in list, print x
。
您可能对auto& x
感到困惑。它通过引用访问(现有变量名的别名)。您可以阅读有关C++ references的更多信息。