pgrm_021.cpp
Problem Statement
pgrm_021.cpp
operator overloading using friend function
Source Code
cpp
#include <iostream>
using namespace std;
class Complex {
private:
int real, img;
public:
Complex (int r = 0, int i = 0) {
real = r; img = i;
}
friend Complex operator + (const Complex &obj1, const Complex &obj2);
void output() {
cout << "Complex number: " << real << " + " << img << "i";
}
};
Complex operator + (const Complex &obj1, const Complex &obj2) {
Complex temp;
temp.real = obj1.real + obj2.real;
temp.img = obj1.img + obj2.img;
return temp;
}
int main() {
Complex complex1(10, 20), complex2(20, 30), result;
cout << "First complex number: " << endl;
complex1.output();
cout << endl << "Second complex number: " << endl;
complex2.output();
cout << endl << "After Addition: " << endl;
result = complex1 + complex2;
result.output();
return 0;
}1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37