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=0):val(v){}
int getV() const {return val;}
operator int () const { return val;} };
ostream & operator <<(ostream & out, const B & v) { out< template ostream & out; Out(ostream & o): out(o){} void operator() (const T & val ) { out< struct Add { B operator()(B & a, B & b) { return a+b; } }; int main() { B 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(), bind2nd(Add(),1)); for_each(v2.rbegin(), v2.rend(), Out(cout));cout< return 0; } Program outputs:
Suggested Answer: E
Get Premium CPP Questions
as Interactive Web-Based Practice Test or PDF
Real Exam Format
Detailed Explanations
Instant Access
Get Your Practice Test
7 comments · newest first
CE
Cecilia
11 months ago
Surprised it doesn't throw an error with that Add struct!
AV
Avery
12 months ago
No way, it should be "1 2 3 4 5 6 7 8 9 10"!
JA
Jamal
12 months ago
I thought it would be a compilation error, but I guess not!
TH
Theola
1 year ago
Definitely B, since it adds 1 to each element.
SA
Salena
1 year ago
Looks like it outputs "2 3 4 5 6 7 8 9 10 11".
DE
Deane
1 year ago
Option A sounds like the best fit to me. ITSI is designed for monitoring business services, so that would be the most beneficial scenario compared to just monitoring hardware, processes, or retail metrics.
CH
Chanel
1 year ago
Hmm, I'm not sure about this one. I'll have to think it through carefully before selecting an answer.