C++ algorithm for_each() function
示例
将向量中的每个数字加一
void add_one(int &value) {
value++;
}
int main() {
vector<int> numbers = {1, 7, 3, 5, 9, 2};
// Increase each number by one
for_each(numbers.begin(), numbers.end(), add_one);
// Output the modified numbers
for (int number : numbers) {
cout << number << " ";
}
return 0;
}
自己动手试一试 »
定义和用法
for_each()
函数对数据范围中的每个元素运行一个函数。
数据范围由迭代器指定。
用于数据处理的函数以数据范围的元素作为参数。
注意:
为了改变元素的值,函数参数必须使用 &
引用运算符进行引用,如本例所示
void add_one(int &value)
如果未使用 &
引用运算符,如下所示,则函数将能够读取元素的值,但不能修改它。
void add_one(int value)
语法
for_each(iterator start, iterator end, function fun);
参数值
参数 | 描述 |
---|---|
start | 必需。指向数据范围开始位置的迭代器。 |
end | 必需。指向数据范围结束位置的迭代器。将包含此位置之前的元素,但不包含此位置的元素。 |
fun | 必需。一个函数,以数据范围的一个元素作为参数。 |
技术详情
返回 | 由fun参数提供的函数。 |
---|
相关页面
在我们 数据结构教程 中了解更多关于数据结构的信息。
在我们 迭代器教程 中了解更多关于迭代器的信息。
在我们 算法教程 中了解更多关于算法的信息。