📜  C++ STL-algorithm.find()函数(1)

📅  最后修改于: 2023-12-03 15:13:55.131000             🧑  作者: Mango

C++ STL-algorithm.find()函数介绍

C++ STL 中的 algorithm 库是一个非常强大和常用的库,它包含了许多常用的算法和函数模板,其中包括了 find() 函数。这个函数的作用是在一个容器中查找某个元素,如果找到了则返回该元素的迭代器,反之返回容器的末尾迭代器。

语法
Iterator find (Iterator first, Iterator last, const T& val);

其中,firstlast 分别表示查找区间的起始和结束迭代器,val 则表示需要查找的元素值。这里的 Iterator 可以是任意 STL 容器的迭代器类型,比如 vector、list、set、map 等等。

返回值

该函数返回查找到的元素的迭代器,如果没有找到,则返回指向容器结束位置的迭代器。

使用示例
#include <iostream>
#include <vector>
#include <algorithm>

int main()
{
    std::vector<int> vec{ 1, 2, 3, 4, 5 };
    auto result = std::find(vec.begin(), vec.end(), 3);
    if (result != vec.end())
    {
        std::cout << "Element found: " << *result << std::endl;
    }
    else
    {
        std::cout << "Element not found." << std::endl;
    }

    return 0;
}

上面的程序中,我们构建了一个包含 1~5 的 vector,然后使用 std::find() 在其中查找值为 3 的元素。由于查找到了,因此会输出 Element found: 3 的信息。

总结

C++ STL 中的 find() 函数是一个非常有用的函数模板,它能够方便地帮助我们在一个容器中查找某个元素。在实际开发中,它可以帮助我们快速地判断一个元素是否在容器中,从而避免不必要的遍历。因此,在学习和使用 STL 时,find() 函数也是我们必须要熟悉和掌握的重要内容之一。