C++ 迭代器有效性判断:如何判断迭代器是否有效
在 C++ 中,可以使用 std::list、std::vector、std::deque 等容器的迭代器的 operator!= 操作符来判断一个迭代器是否有效。如果迭代器不等于容器的 end() 迭代器,则表示迭代器是有效的。
下面是一个示例代码:
#include <iostream>
#include <list>
int main() {
std::list<int> myList = {1, 2, 3, 4, 5};
// 获取迭代器
std::list<int>::iterator itor = myList.begin();
// 判断迭代器是否有效
if (itor != myList.end()) {
std::cout << 'Iterator is valid.' << std::endl;
} else {
std::cout << 'Iterator is not valid.' << std::endl;
}
return 0;
}
输出结果为:
Iterator is valid.
在这个示例中,我们使用 myList.begin() 函数获取了容器 myList 的起始迭代器。然后,通过比较迭代器 itor 和容器的 end() 迭代器,判断迭代器是否有效。由于 itor 不等于 myList.end(),所以迭代器是有效的。
原文地址: https://www.cveoy.top/t/topic/tv1 著作权归作者所有。请勿转载和采集!