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

using myVectorIterator = std::vector<int>::iterator;

这是我的
for (myVectorIterator = vector.begin(); myVectorIterator != vector.end(); myVectorIterator++)

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

最佳答案

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

for(myVectorIterator itr = ...; itr != ...; ++itr) {
}

或者使用auto走更简单的路线:
for(auto itr = ...; itr != ...; ++itr) {
}

甚至是最简单的方法,只需将范围用于:
for(int i : vec) {

}

选择一种可以在每次迭代中为您提供所需信息的信息。

10-05 19:48