template <class InputIterator, class OutputIterator, class X> OutputIterator replace_copy( InputIterator qFirst, InputIterator qLast, OutputIterator qDest, const X& kxrOldValue, const X& kxrNewValue );
#include <algorithm>
#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
using namespace std;
// Create two vector instances
vector<char> qV1;
qV1.push_back('X');
qV1.push_back('o');
qV1.push_back('a');
qV1.push_back('X');
qV1.push_back('.');
qV1.push_back('n');
qV1.push_back('e');
qV1.push_back('t');
vector<char> qV2(12, '-');
vector<char>::iterator qIter;
// Output the vectors
cout << "Original V1: ";
for (qIter = qV1.begin(); qIter != qV1.end(); ++qIter) {
cout << *qIter;
}
cout << endl;
cout << "Original V2: ";
for (qIter = qV2.begin(); qIter != qV2.end(); ++qIter) {
cout << *qIter;
}
cout << endl;
// Copy v1 with the 'X' characters replaced by 'x'
vector<char>::iterator qEndOfCopyIter;
qEndOfCopyIter = replace_copy(qV1.begin(), qV1.end(), qV2.begin() + 2, 'X', 'x');
// Output the result vector
cout << "Resulting V2: ";
for (qIter = qV2.begin(); qIter != qV2.end(); ++qIter) {
cout << *qIter;
}
cout << endl;
// Keep the window open
cin.get();
return 0;
}
© 20072025 XoaX.net LLC. All rights reserved.