-
Notifications
You must be signed in to change notification settings - Fork 4
/
TimeSpan.cpp
72 lines (56 loc) · 1.47 KB
/
TimeSpan.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/*
* File: TimeSpan.cpp
* Author: Administrator
*
* Created on 2014年1月27日, 上午8:51
*/
#include "TimeSpan.h"
namespace CommLib {
TimeSpan::TimeSpan() : lDays_(0), nHours_(0), nMins_(0), nSecs_(0), tt_(0) {
}
TimeSpan::TimeSpan(time_t tt) {
tt_ = tt;
nSecs_ = tt % 60;
tt = tt / 60;
nMins_ = tt % 60;
tt = tt / 60;
nHours_ = tt % 24;
lDays_ = tt / 24;
}
TimeSpan::TimeSpan(const TimeSpan& orig)
: lDays_(orig.lDays_), nHours_(orig.nHours_), nMins_(orig.nMins_), nSecs_(orig.nSecs_)
, tt_(orig.tt_) {
}
TimeSpan::~TimeSpan() {
}
TimeSpan::TimeSpan(long lDays, int nHours, int nMins, int nSecs)
: lDays_(lDays), nHours_(nHours), nMins_(nMins), nSecs_(nSecs) {
tt_ = ((lDays_ * 24 + nHours_)*60 + nMins_)*60 + nSecs_;
}
long TimeSpan::GetDays() {
return lDays_;
}
int TimeSpan::GetHours() {
return nHours_;
}
int TimeSpan::GetMinutes() {
return nMins_;
}
int TimeSpan::GetSeconds() {
return nSecs_;
}
time_t TimeSpan::GetTimeSpan() {
return tt_;
}
TimeSpan TimeSpan::operator +(TimeSpan &span) {
TimeSpan rSpan(tt_ + span.tt_);
return rSpan;
}
TimeSpan TimeSpan::operator -(TimeSpan &span) {
TimeSpan rSpan(tt_ - span.tt_);
return rSpan;
}
bool TimeSpan::operator>(TimeSpan &span) {
return (tt_ > span.tt_);
}
}