اورلودکردن عملگر افزایش (++) و عملگر کاهش (- -)

عملگرهای افزایش (++) و کاهش (- -) دو عملگر یگانی مهم در ++C هستند.

مثال زیر نحوه اورلود کردن عملگر افزایش (++)، در حالت پیشوند و پسوند را نشان می‌دهد. به طریق مشابه، می‌توان عملگر کاهش (- -) را نیز اورلود کرد.

#include <iostream>
using namespace std;
class Time {
private:
int hours;             // 0 to 23
int minutes;           // 0 to 59
public:
// required constructors
Time() {
hours = ;
minutes = ;
}
Time(int h, int m) {
hours = h;
minutes = m;
}
// method to display time
void displayTime() {
cout << "H: " << hours << " M:" << minutes <<endl;
}
// overloaded prefix ++ operator
Time operator++ () {
++minutes;          // increment this object
if(minutes >= 60) {
++hours;
minutes -= 60;
}
return Time(hours, minutes);
}
// overloaded postfix ++ operator
Time operator++( int ) {
// save the orignal value
Time T(hours, minutes);
// increment this object
++minutes;                    
if(minutes >= 60) {
++hours;
minutes -= 60;
}
// return old original value
return T; 
}
};
int main() {
Time T1(11, 59), T2(10,40);
++T1;                    // increment T1
T1.displayTime();        // display T1
++T1;                    // increment T1 again
T1.displayTime();        // display T1
T2++;                    // increment T2
T2.displayTime();        // display T2
T2++;                    // increment T2 again
T2.displayTime();        // display T2
return ;
}

خروجی حاصله به صورت زیر خواهد بود.

H: 12 M:0
H: 12 M:1
H: 10 M:41
H: 10 M:4

منبع: ترجمه از سایت tutorialspoint.com

مطالعه دیگر جلسات این آموزش<< جلسه قبلی                    جلسه بعدی >>

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *