如何使用迭代器?

M.G*_*mez 2 c++ visual-studio

如何使用USING命令在c ++中声明迭代器?

using myVectorIterator = std::vector<int>::iterator;
Run Code Online (Sandbox Code Playgroud)

这是我的意思

for (myVectorIterator = vector.begin(); myVectorIterator != vector.end(); myVectorIterator++)
Run Code Online (Sandbox Code Playgroud)

我在'='和'!='中有错误.

Sto*_*ica 5

myVectorIterator是一个类型别名,而不是一个对象.您需要声明一个实际的迭代器:

for(myVectorIterator itr = ...; itr != ...; ++itr) {
}
Run Code Online (Sandbox Code Playgroud)

或者走更简单的路线auto:

for(auto itr = ...; itr != ...; ++itr) {
}
Run Code Online (Sandbox Code Playgroud)

甚至可能是最简单的,只需使用以下范围:

for(int i : vec) {

}
Run Code Online (Sandbox Code Playgroud)

选择能够为您提供每次迭代所需信息的那个.

  • 我想在第一个for循环中增加使用`auto`的可能性. (2认同)