我正在关注 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’
最佳答案
教程是错误的。 iterator
是所有集合类中的type 成员,而不是function 成员。它是一些vector
的成员函数的返回类型
教程可能写的意思是
vector<int> vec;
auto itr = vec.begin(); // itr is of type std::vector<int>::iterator
关于c++ - 将 `auto` 关键字与 STL 迭代器一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49872949/