BlackFriday 2024! 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 2 Question 99 Discussion

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

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

#include

#include

#include

using namespace std;

templatestruct Out {

ostream & out;

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

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

struct Add {

int operator()(int & a, int & b) {

return a+b;

}

};

int main() {

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

vector v1(t, t+10);

vector v2(10);

transform(v1.begin(), v1.end(), v2.begin(), bind1st(1,Add()));

for_each(v2.rbegin(), v2.rend(), Out(cout));cout<

return 0;

}

Program outputs:

Show Suggested Answer Hide Answer
Suggested Answer: E

Contribute your Thoughts:

Maxima
7 days ago
Wait, why are we reversing the order of the elements? Shouldn't the output be the original array?
upvoted 0 times
...
Nydia
20 days ago
Hmm, this seems like a tricky one. I'm gonna go with option B, that makes the most sense to me.
upvoted 0 times
Cecil
6 days ago
I think you're right, option B does seem like the most logical choice.
upvoted 0 times
...
Cecil
8 days ago
B) 2 3 4 5 6 7 8 9 10 11
upvoted 0 times
...
...
Tina
24 days ago
I disagree, I believe the correct answer is E) compilation error.
upvoted 0 times
...
Catalina
25 days ago
I think the answer is B) 2 3 4 5 6 7 8 9 10 11.
upvoted 0 times
...

Save Cancel