Function Overloading
Function Overloading
OPERATOR OVERLOADING
- Shashank Reddy (CSE22102)
1)
#include <iostream>
class Complex
private:
double real;
double imaginary;
public:
{
return Complex(real * other.real - imaginary * other.imaginary,
real * other.imaginary + imaginary * other.real);
void display()
cout << real << " + " << imaginary << "i" << endl;
};
int main()
result1.display();
result2.display();
result3.display();
return 0;
OUTPUT
2) #include <iostream>
#include <string>
class MyString {
private:
string str;
public:
void display() {
};
int main() {
MyString str1("Hello, ");
MyString str2("World!");
MyString str4("C++");
concatenated.display();
} else {
if (str1 == str3) {
} else {
if (str1 == str4) {
} else {
return 0;
}
3) #include <iostream>
class Time {
private:
int hours;
int minutes;
public:
Time operator++(int);
Time& operator++();
Time operator--(int);
Time& operator--();
};
in >> t.hours;
cout << "Enter minutes: ";
in >> t.minutes;
return in;
out << "Time: " << t.hours << " hours " << t.minutes << " minutes";
return out;
Time Time::operator++(int) {
minutes++;
if (minutes == 60) {
hours++;
minutes = 0;
return temp;
Time& Time::operator++() {
minutes++;
if (minutes == 60) {
hours++;
minutes = 0;
return *this;
}
Time Time::operator--(int) {
minutes--;
if (minutes < 0) {
hours--;
minutes = 59;
if (hours < 0) {
hours = 0;
minutes = 0;
return temp;
Time& Time::operator--() {
minutes--;
if (minutes < 0) {
hours--;
minutes = 59;
if (hours < 0) {
hours = 0;
minutes = 0;
return *this;
int main() {
Time t3 = t1++;
Time t4 = --t2;
return 0;
}
4)
#include <iostream>
#include <vector>
class Matrix {
private:
vector<vector<int>> data;
int rows;
int cols;
public:
data.resize(r, vector<int>(c));
return result;
return result;
};
in >> matrix.data[i][j];
return in;
return out;
int main() {
cout << "Enter the number of rows and columns for the second matrix:
";
if (matrix1 == matrix2) {
return 0;