COMPUTER LANGUAGES HTML,C,C++.JAVA,.NET AND MULTIMEDIA basics and programs click home button
C++ LANGUAGE ++ AND -- OPERATORS OVERLOADING
++ and - - Operators Overloading
The increment (++) and decrement (--) operators are two
important unary operators available in C++.
can be overloaded for prefix as well as postfix usage.
Following example explain how increment (++) operator
Similar way, you can overload operator (--).
int hours; // 0 to 23
#include <iostream>
using namespace std;
class Time
{
private:
hours = 0;
int minutes; // 0 to 59
public:
// required constructors
Time(){
minutes = 0;
void displayTime()
}
Time(int h, int m){
hours = h;
minutes = m;
}
// method to display time
{
// overloaded prefix ++ operator
cout << "H: " << hours << " M:" << minutes <<endl;
}
Time operator++ ()
{
++minutes; // increment this object
Time operator++( int )
if(minutes >= 60)
{
++hours;
minutes -= 60;
}
return Time(hours, minutes);
}
// overloaded postfix ++ operator
{
minutes -= 60;
// save the orignal value
Time T(hours, minutes);
// increment this object
++minutes;
if(minutes >= 60)
{
++hours;
}
++T1; // increment T1 again
// return old original value
return T;
}
};
int main()
{
Time T1(11, 59), T2(10,40);
++T1; // increment T1
T1.displayTime(); // display T1
T1.displayTime(); // display T1
When the above code is compiled and executed, it produces the following result:
T2++; // increment T2
T2.displayTime(); // display T2
T2++; // increment T2 again
T2.displayTime(); // display T2
return 0;
}
H: 12 M:0
H: 12 M:1
H: 10 M:41
H: 10 M:42
No comments:
Post a Comment