Download OOP Lab 4 Solutions - program to overload and more Lab Reports Object Oriented Programming in PDF only on Docsity!
Task 4.1 Write a C++ program to overload the unary operator “- -” #include using namespace std; class Decrement { int a, b; public: void accept() { cout<<"\n Enter Two Numbers : \n"; cout<<"Num1: "; cin>>a; cout<<"Num2: "; cin>>b; } void operator--() //Overload Unary Decrement { a--; b--; } void display() { cout<<"\n Num1 : "<<a; cout<<"\n Num2 : "<<b; }}; int main() { system("color f0"); Decrement id; id.accept(); --id; cout<<"\n After Decrementing : "; id.display(); return 0;
Task 4.2 Write a C++ program to overload arithmetic assignment operator “=” #include using namespace std; class Marks { private: int m1; int m2; public: //Default constructor Marks() { m1 = 0; m2 = 0; } // Parametrised constructor Marks(int i, int j) { m1 = i; m2 = j; } // Overloading of Assignment Operator void operator=(const Marks &M ) { m1 = M.m1; m2 = M.m2; }
Task 4.3 Write a C++ program to overload relational operator “<” #include #include<string.h> using namespace std; class Displacement { private : int x; char n[20]; public: Displacement(int initialize, char name[]) //counstructor { x=initialize; strcpy(n,name); cout<<"you have created an object "<<n<<" which need to displace "<< x <<" units"; cout<<endl; } void operator>(Displacement obj) //operator overloading for > operator { if (x>obj.x) { cout<<"True--> object "<<n << " is greater than object "<<obj.n; } else { cout<<"False--> object "<<obj.n << "is greater than object "<<n; } cout<<endl; } void operator<(Displacement obj) //operator overloading for > operator { if (x<obj.x) { cout<<"True--> object "<<n << " is Smaller than object "<<obj.n; } else { cout<<"False--> object "<<obj.n << " is greater than object "<<n; }
cout<<endl; } }; int main() { system("color f0"); Displacement d1(200,"d1"); // Displacement object Displacement d2(30,"d2"); // Displacement object d1>d2; d1<d2; return 0; }