इन्क्रीमेंट (++) और डिक्रीमेंट (--) ऑपरेटर C++ में दो महत्वपूर्ण यूनरी ऑपरेटर हैं। निम्नलिखित उदाहरण दर्शाता है कि इन्क्रीमेंट (++) ऑपरेटर को प्रीफिक्स और पोस्टफिक्स दोनों उपयोग के लिए कैसे ओवरलोड किया जा सकता है। इसी तरह, आप ऑपरेटर (--) को भी ओवरलोड कर सकते हैं।
उदाहरण
#include <iostream>
using namespace std;
class Time {
private:
int hours;
int minutes;
public:
Time(int h, int m) {
hours = h;
minutes = m;
}
void display() {
cout << "H: " << hours << " M:" << minutes << endl;
}
// प्रीफिक्स ++ ऑपरेटर ओवरलोड
Time operator++() {
++minutes;
// वर्तमान ऑब्जेक्ट को इन्क्रीमेंट करें
if (minutes >= 60) {
++hours;
minutes -= 60;
}
return Time(hours, minutes);
}
// पोस्टफिक्स ++ ऑपरेटर ओवरलोड
Time operator++(int) {
Time T(hours, minutes);
// वर्तमान ऑब्जेक्ट को इन्क्रीमेंट करें
++minutes;
if (minutes >= 60) {
++hours;
minutes -= 60;
}
// पुराना मूल मान लौटाएं
return T;
}
};
int main() {
Time T1(11, 59), T2(10, 40);
++T1;
T1.display();
++T1;
T1.display();
T2++;
T2.display();
T2++;
T2.display();
return 0;
}
आउटपुट
इसका परिणाम निम्न होगा:
H: 12 M:0 H: 12 M:1 H: 10 M:41 H: 10 M:42