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 CPP Exam - Topic 3 Question 123 Discussion

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
C) compilation error
A) 8 10 5 1 4 6 2 7 9 3
B) 1 2 3 4 5 6 7 8 9 10
D) 10 9 8 7 6 5 4 3 2 1

C++ Institute CPP Exam - Topic 3 Question 123 Discussion

Actual exam question for C++ Institute's CPP exam
Question #: 123
Topic #: 3
[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};

vector v1(t, t+10);

sort(v1.begin(), v1.end(), greater());

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

return 0;

}

Program outputs:

Show Suggested Answer Hide Answer
Suggested Answer: C

Contribute your Thoughts:

0/2000 characters
Giuseppe
2 days ago
I think it will compile fine.
upvoted 0 times
...
Wilda
7 days ago
I believe it should output D too, looks good to me!
upvoted 0 times
...
Bok
12 days ago
I’m leaning towards C, something feels off.
upvoted 0 times
...
Earleen
17 days ago
I agree with Barrett, it looks correct.
upvoted 0 times
...
Barrett
22 days ago
The output should be D, sorted in descending order.
upvoted 0 times
...
Lucina
28 days ago
I feel like there's a compilation error.
upvoted 0 times
...
Wei
1 month ago
I think it will compile fine.
upvoted 0 times
...
Eliz
1 month ago
Is there a chance of a compilation error here?
upvoted 0 times
...
Lezlie
1 month ago
Wait, how does it sort in descending order?
upvoted 0 times
...
Roselle
2 months ago
Definitely outputs D, right?
upvoted 0 times
...
Helaine
2 months ago
I think it should compile fine.
upvoted 0 times
...
Wilda
2 months ago
The vector is initialized with 10 elements.
upvoted 0 times
...
Kallie
2 months ago
Not so sure about that, seems like a compilation error could happen.
upvoted 0 times
...
Berry
2 months ago
Totally agree with Shad, D is the right answer!
upvoted 0 times
...
Carlota
2 months ago
Wait, isn't there a mistake with the vector initialization?
upvoted 0 times
...
Shad
3 months ago
I think it will output D, sorted in descending order.
upvoted 0 times
...
Amber
3 months ago
Looks like it should compile fine.
upvoted 0 times
...
Shonda
3 months ago
I’m confused about the vector initialization. If it’s not compiling, then option C could be the right answer, but I hope it runs correctly and gives us the sorted output.
upvoted 0 times
...
Leonor
3 months ago
I'm not entirely sure, but I feel like the output could be option D since we're sorting the objects of class B, and they should print in descending order.
upvoted 0 times
...
Shaunna
3 months ago
I remember practicing a similar question where we had to sort a custom class. I think the output should be in descending order because of the `greater()` comparator.
upvoted 0 times
...
Vivienne
5 months ago
I think there might be a compilation error because the vector is initialized with an array of integers, but the class B expects an integer in its constructor.
upvoted 0 times
...