What happens when you attempt to compile and run the following code?#include <vector>#include <iostream>#include <algori
Posted: Wed Aug 03, 2022 9:20 am
What happens when you attempt to compile and run the following code?#include <vector>#include <iostream>#include <algorithm>using namespace std;template<class T>struct Out {ostream & out;Out(ostream & o): out(o){}void operator()(const T & val ) {out<<val<<" ";}};struct Sequence {int start;Sequence(int start):start(start){}int operator()() {return start++ ; }};int main() {vector<int> v1(10);generate(v1.rbegin(), v1.rend(), Sequence(1));rotate(v1.begin(),v1.begin() + 1, v1.end() );for_each(v1.begin(), v1.end(), Out<int>(cout) );cout<<endl; return 0;}Program outputs:
A. 1 2 3 4 5 6 7 8 9 10
B. 10 9 8 7 6 5 4 3 2 1
C. 9 8 7 6 5 4 3 2 1 10
D. 1 10 9 8 7 6 5 4 3 2
A. 1 2 3 4 5 6 7 8 9 10
B. 10 9 8 7 6 5 4 3 2 1
C. 9 8 7 6 5 4 3 2 1 10
D. 1 10 9 8 7 6 5 4 3 2