将 `auto` 关键字与 STL 迭代器一起使用

using the `auto` keyword with STL iterators

我正在按照 this 教程使用 auto 关键字和 STL 迭代器。

它说此语法适用于 C++ 11。

vector<int> vec;
auto itr = vec.iterator(); // instead of vector<int>::iterator itr

但是,我在尝试时遇到这个编译错误?

error: invalid use of ‘std::vector::iterator’

教程有误。在所有集合 类 中,iteratortype 成员,而不是 function 成员。是vector的一些成员函数

return类型

教程大概写的意思是

vector<int> vec;
auto itr = vec.begin(); // itr is of type std::vector<int>::iterator