#include iostreamusing namespace std;class Time {private:int hours;// 0 to 23int minutes;// 0 to 59
编程学习网为您整理以下代码实例,主要实现:C++递增/递减运算符重载,希望可以帮到各位朋友。
#include <iostream>
using namespace std;
class Time {
private:
int hours; // 0 to 23
int minutes; // 0 to 59
public:
// required constructors
Time() {
hours = 0;
minutes = 0;
}
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 0;
}
沃梦达教程
本文标题为:C++递增/递减运算符重载


基础教程推荐
猜你喜欢
- 明确指定任何或所有枚举数的整数值 1970-01-01
- C++:为什么结构类需要一个虚拟方法才能成为多态? 2022-10-19
- 总计将在节日礼物上花多少钱 1970-01-01
- C++多态 1970-01-01
- 对 STL 容器的安全并行只读访问 2022-10-25
- C语言数组 1970-01-01
- 迭代std :: bitset中真实位的有效方法? 2022-10-18
- C语言3个整数的数组 1970-01-01
- 用指数格式表示浮点数 1970-01-01
- 向量<unique_ptr<A>>使用初始化列表 2022-10-23