1.作用
将某操作应用于指定范围的每个元素
2.格式
transform(first,last,result,op);
first是容器的首迭代器
last为容器的末迭代器
result为存放结果的容器
op为要进行操作的一元函数对象或sturct、class。
例如 将一个字符串的大写字母转换为小写字母
transform(a.begin(),a.end(),a.begin(),::tolower);//小写
3.格式二
transform(first1,last1,first2,result,binary_op);
//须保证两个容器内元素相等
first1是第一个容器的首迭代器
last1为第一个容器的末迭代器
first2为第二个容器的首迭代器
result为存放结果的容器
binary_op为要进行操作的二元函数 对象或sturct、class。
例如 令两个vector对位相乘
int op(int a,int b){return a*b;}
int main()
{
vector <int> A,B,SUM;
int n;
cin>>n;
for(int i=0;i<n;i++)
{
int t;
cin>>t;
A.push_back(t);
}
for(int i=0;i<n;i++)
{
int t;
cin>>t;
B.push_back(t);
}
SUM.resize(n);
transform(A.begin(),A.end(),B.begin(),SUM.begin(),op);
for (auto n : SUM)
{
cout << n;
}
return 0;
}