没测试过,不知有没bug。。。请自己补充。class Clock{
private int _Hour;
private int _Minute;
private int _Second;public int Hour{get{ return this._Hour;} set{ this._Hour = value;}}public int Minute{get{ return this._Minute;} set{ this._Minute = value;}}public int Second{get{ return this._Second;} set{ this._Second = value;}} public Clock(int hour, int minute, int second){if(hour11)throw new ArgumentException("hour should be between 0-11"); if(minute59)throw new ArgumentException("minute should be between 0-59"); if(second59)throw new ArgumentException("second should be between 0-59");this._Hour = hour; this._Minute = minute; this._Second = second;}public static Clock operator+ (Clock clock1, Clock clock2){Clock result;int hour, minute, second;second = clock1.Second + clock2.Second;minute = clock1.Minute + clock2.Minute;hour = clock1.Hour + clock2.Hour;
if(second >= 60){
minute++;
second -= 60;}if(minute >= 60){
hour++;
minute -= 60;}
if(hour >= 12){
hour -= 12;}
result = new Clock(hour, minute, second);return result;}public static Clock operator- (Clock clock1, Clock clock2){//类似上面,自己扩充吧。}
|