c++transform
时间: 2024-01-21 07:14:22 浏览: 95
C++中的transform是一个算法函数,用于对容器中的元素进行转换操作。它接受三个参数:起始迭代器、结束迭代器和一个函数对象(或函数指针),并将该函数应用于容器中的每个元素。transform函数将返回一个新的容器,其中包含转换后的元素。
下面是一个示例,演示了如何在C++中使用transform函数对一个整数数组进行平方操作:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
// 函数对象,用于将元素平方
struct Square {
int operator()(int x) const {
return x * x;
}
};
int main() {
std::vector<int> nums = {1, 2, 3, 4, 5};
std::vector<int> squared_nums;
// 使用transform函数对nums中的每个元素进行平方操作,并将结果存储到squared_nums中
std::transform(nums.begin(), nums.end(), std::back_inserter(squared_nums), Square());
// 输出转换后的结果
for (int num : squared_nums) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 4 9 16 25
```
阅读全文