C++ 算法 find_first_of() 函数

定义和用法

find_first_of() 函数用于在主数据范围内查找任意一个目标值的首次出现位置,并返回指向该位置的迭代器。若未找到任何目标值,则返回指向主数据范围末尾的迭代器。

数据范围通过迭代器指定。要查找的目标值集合由另一个数据范围指定。

实例

在 vector 中查找多个目标值的首次出现:

vector<int> numbers = {1, 7, 3, 5, 9, 2};
vector<int> search = { 2, 3, 9 };
auto it = find_first_of(numbers.begin(), numbers.end(), search.begin(), search.end());
if (it != numbers.end()) {
    cout << "找到匹配数字:" << *it;  // 输出首个匹配值
} else {
    cout << "未找到任何目标数字";
}

亲自试一试

语法

find_first_of(iterator start, iterator end, iterator values_start, iterator values_end);

参数

参数 描述
start 必需。指向主数据范围起始位置的迭代器。
end

必需。指向主数据范围结束位置的迭代器。

将搜索到该位置之前的元素。

values_start 必需。指向目标值集合起始位置的迭代器。
values_end 必需。指向目标值集合结束位置的迭代器。

技术细节

返回:

指向主数据范围内首次出现任意目标值的迭代器。

若未找到则返回主数据范围的 end 迭代器。

相关页面

教程:C++ 数据结构

教程:C++ 迭代器

教程:C++ 算法