Page 1 of 1

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
by answerhappygod
What happens when you attempt to compile and run the following code?#include <vector>#include <iostream>#include <algorithm>using namespace std;class B { int val;public:B(int v):val(v){}int getV() const {return val;} bool operator < (const B & v) const { return val<v.val;} }; ostream & operator <<(ostream & out, const B & v) { out<<v.getV(); return out;} template<class T>struct Out { ostream & out;Out(ostream & o): out(o){}void operator() (const T & val ) { out<<val<<" "; } }; int main() {B t1[]={3,2,4,1,5};B t2[]={5,6,8,2,1};vector<B> v1(10,0);sort(t1, t1+5);sort(t2, t2+5);set_symmetric_difference(t2,t2+5,t1,t1+5,v1.begin());for_each(v1.begin(), v1.end(), Out<B>(cout));cout<<endl; return 0;}Program outputs:

A. 6 8 3 4 0 0 0 0 0 0
B. 3 4 0 0 0 0 0 0 0 0
C. 6 8 0 0 0 0 0 0 0 0
D. compilation error E. 3 4 6 8 0 0 0 0 0 0