What happens when you attempt to compile and run the following code?
#include
using namespace std;
class complex{ double re, im; public:
complex() : re(1),im(0.4) {} complex operator(complex &t);
void Print() { cout << re << " " << im; }
}
complex complex::operator (complex &t){ complex temp; temp.re = this>re t.re; temp.im = this>im t.im;
return temp;
}
int main(){ complex c1,c2,c3; c3 = c1 c2; c3.Print();
}
A. It prints: 1 0.4
B. It prints: 2 0.8
C. It prints: 0 0
D. It prints: 1 0.8