template <class BidirIterator, class OutputIterator> OutputIterator reverse_copy( BidirIterator qFirst, BidirIterator qLast, OutputIterator qDest );
#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; // Reverse copy v1 with the 'X' characters replaced by 'x' vector<char>::iterator qEndOfCopyIter; qEndOfCopyIter = reverse_copy(qV1.begin(), qV1.end(), qV2.begin() + 2); // 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; }
© 20072024 XoaX.net LLC. All rights reserved.