Deal of The Day! Hurry Up, Grab the Special Discount - Save 25% - Ends In 00:00:00 Coupon code: SAVE25
Welcome to Pass4Success

- Free Preparation Discussions

C++ Institute Exam CPP Topic 7 Question 115 Discussion

Actual exam question for C++ Institute's CPP exam
Question #: 115
Topic #: 7
[All CPP Questions]

What happens when you attempt to compile and run the following code?

#include

#include

#include

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

ostream & operator <<(ostream & out, const B & v) { out<

templatestruct Out {

ostream & out;

Out(ostream & o): out(o){}

void operator() (const T & val ) { out<

int main() {

int t[]={8, 10, 5, 1, 4, 6, 2, 7, 9, 3};

set s1(t, t+10);

sort(s1.begin(), s1.end());

for_each(s1.begin(), s1.end(), Out(cout));cout<

return 0;

}

Program outputs:

Show Suggested Answer Hide Answer
Suggested Answer: C

Contribute your Thoughts:

Carma
3 days ago
Okay, let me think this through. The code is creating a set of B objects, sorting them, and then printing them out. I'm guessing the output will be the sorted values of the B objects. I'll need to double-check the comparison operator, but I think I can figure this out.
upvoted 0 times
...
Derick
9 days ago
Hmm, I'm a bit confused by all the custom class and template stuff. I'll need to carefully read through the code and make sure I understand how the set and for_each are being used. Might be a tricky one.
upvoted 0 times
...
Zita
14 days ago
This looks like a pretty straightforward C++ question. I think I can handle it - the code seems to be working with a set of custom objects, so I'll need to pay attention to the comparison operator and output operator.
upvoted 0 times
...