template <class InIter, class OutIter, class UnaryFn> OutIter transform( InIter qFirst, InIter qLast, OutIter qResult, UnaryFn qUnaryFn );
#include <algorithm>
template <class InIter1, class InIter2, class OutIter, class BinaryFn> OutIter transform( InIter1 qFirst1, InIter1 qLast1, InIter2 qFirst2, OutIter qResult, BinaryFn qBinaryFn );
#include <iostream>
#include <vector>
#include <algorithm>
#include <cctype>
char ToUpper(char cChar) {
return (char)(toupper(cChar));
}
int main()
{
using namespace std;
// Create two vector instances
vector<char> qV;
qV.push_back('X');
qV.push_back('o');
qV.push_back('a');
qV.push_back('X');
qV.push_back('.');
qV.push_back('n');
qV.push_back('e');
qV.push_back('t');
vector<char> qT(10);
// Transform the original vector
transform(qV.begin(), qV.end(), qT.begin(), ToUpper);
// Output the orignal vector and the transformed one
cout << "Original: ";
vector<char>::iterator qIter;
for (qIter = qV.begin(); qIter != qV.end(); ++qIter) {
cout << *qIter;
}
cout << endl;
cout << "Tranformed: ";
for (qIter = qT.begin(); qIter != qT.end(); ++qIter) {
cout << *qIter;
}
cout << endl;
// Keep the window open
cin.get();
return 0;
}
© 20072025 XoaX.net LLC. All rights reserved.