在 C++ 中,可以使用 std::liststd::vectorstd::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(),所以迭代器是有效的。

C++ 迭代器有效性判断:如何判断迭代器是否有效

原文地址: https://www.cveoy.top/t/topic/tv1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录