#include<string>
#include<vector>
#include<deque>
#include<algorithm>
#include<iostream>
#include<functional>
using namespace std;
template <typename T>
void show(const T& a){
for(auto p = a.begin(); p != a.end(); p ++)
cout << *p << ' ';
cout << endl;
}
int main(){
string s1("Hello World"), s2;
s2.resize( s1.size());
//1 transform( iterator first, iterator last, output_iterator, 一元函数)
transform( s1.begin(), s1.end(), s2.begin(), ::tolower);
cout << "s1 is " << s1 << endl;
cout << "s2 is " << s2 << endl;
vector <int> a{ 1, 2, 3, 4, 5, 6}, b{ 6, 5, 4, 3, 2, 1};
deque <int> c( a.size());
/*2 transform( _InputIterator1 __first1, _InputIterator1 __last1,
_InputIterator2 __first2, _OutputIterator __result,
_BinaryOperation __binary_op) */
transform( a.begin(), a.end(), b.begin(), c.begin(), plus<int>());
cout << "a is " << endl;
show( a);
cout << "b is " << endl;
show( b);
cout << "c is " << endl;
show( c);
}
C++ transform
最新推荐文章于 2024-05-16 16:20:40 发布