f0806.cpp

来自「it is a usefull thing」· C++ 代码 · 共 39 行

CPP
39
字号
//==================================
// f0806.cpp
// class Time's operator++
//==================================
#include<iostream>
#include<iomanip>
using namespace std;
//----------------------------------
class Time{
  int hour, minute, second;
public:
  void set(int h, int m, int s){ hour=h, minute=m, second=s; }
  friend Time& operator++(Time& a);
  friend Time operator++(Time& a, int);
  friend ostream& operator<<(ostream& o, const Time& t);
};//-------------------------------
Time& operator++(Time& a){
  if(!(a.second=(a.second+1)%60)&&!(a.minute=(a.minute+1)%60))
    a.hour=(a.hour+1)%24;
  return a;
}//--------------------------------
Time operator++(Time& a, int){
  Time t(a);
  if(!(a.second=(a.second+1)%60)&&!(a.minute=(a.minute+1)%60))
    a.hour=(a.hour+1)%24;
  return t;
}//------------------------------------
ostream& operator<<(ostream& o, const Time& t){
  o<<setfill('0')<<setw(2)<<t.hour<<":"<<setw(2)<<t.minute<<":";
  return o<<setw(2)<<t.second<<"\n"<<setfill(' ');
}//--------------------------------
int main(){
  Time t;
  t.set(11, 59, 58);
  cout<<t++;
  cout<<++t;
}//================================

 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?