BOOL operator <( CTime time ) const;
BOOL operator >( CTime time ) const;
BOOL operator <=( CTime time ) const;
BOOL operator >=( CTime time ) const;
这些操作符,我一直很不放心使用,不是不能用,而是判断错误的时候遇到不少,具体原因也没去分析。也许使自己有什么错误的地方也不知……
反正我是转化为整数来解决,麻烦,起码结果是准确的。例:
int strat1,strat2,end1,end2,current;
CTime time=CTime::GetCurrentTime();
CTime time=CTime::GetCurrentTime();
strat1=Time1Strat.GetHour()*10000+Time1Strat.GetMinute()*100+Time1Strat.GetSecond();
strat2=Time2Strat.GetHour()*10000+Time2Strat.GetMinute()*100+Time2Strat.GetSecond();
end1=Time1End.GetHour()*10000+Time1End.GetMinute()*100+Time1End.GetSecond();
end2=Time2End.GetHour()*10000+Time2End.GetMinute()*100+Time2End.GetSecond();
current=time.GetHour()*10000+time.GetMinute()*100+time.GetSecond();
//if((Time1Strat<time&&Time1End>time)||(Time2Strat<time&&Time2End<time)) //不准
if((strat1<current&&end1>current)||(strat2<current&&end2>current))
……
发表于 @ 2009年06月10日 19:55:00 | 评论( loading... ) | 举报| 收藏