程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++ POCO庫中文編程參考指南(6) Poco::Timestamp

C++ POCO庫中文編程參考指南(6) Poco::Timestamp

編輯:關於C++

1 類型別名

三個時間戳相關的類型別名,TimeDiff表示兩個時間戳的 差,第二個是以微秒為單位的時間戳,第三個是以 100 納秒(0.1 微妙)為單 位的時間戳:

typedef Int64 TimeDiff; /// difference between two timestamps in microseconds

typedef Int64 TimeVal; /// monotonic UTC time value in microsecond resolution

typedef Int64 UtcTimeVal; /// monotonic UTC time value in 100 nanosecond resolution

2 構造函數

當前時間的時間戳:

Timestamp ();

指定時間的時間戳:

Timestamp(TimeVal tv);

拷貝構 造函數:

Timestamp(const Timestamp& other);

3 重載運算 符

賦值運算符:

Timestamp& operator = (const Timestamp& other);

Timestamp& operator = (TimeVal tv);

比較運算符:

bool operator == (const Timestamp& ts) const;

bool operator != (const Timestamp& ts) const;

bool operator > (const Timestamp& ts) const;

bool operator >= (const Timestamp& ts) const;

bool operator < (const Timestamp& ts) const;

bool operator <= (const Timestamp& ts) const;

算術運算符與算術賦值運算符

Timestamp operator + (TimeDiff d) const;

Timestamp operator - (TimeDiff d) const;

TimeDiff operator - (const Timestamp& ts) const;

Timestamp& operator += (TimeDiff d);

Timestamp& operator -= (TimeDiff d);

4 獲取不同格式表示的時間戳

獲取 std::time_t 格式的時間戳:

std::time_t epochTime() const;

獲取 UTC-based time 格式的時間戳:

UtcTimeVal utcTime() const;

獲取 TimeVal 格式(微秒)的時間戳:

TimeVal epochMicroseconds() const;

5 其他成員函數

交換時間戳:

void swap(Timestamp& timestamp);

更新時間戳為當前時間 :

void update();

此時時間戳與這個時間戳的差(TimeStamp() - *this):

TimeDiff elapsed() const;

判斷一段時間是否已經 過去:

bool isElapsed(TimeDiff interval) const;

6 靜態成 員函數

用std::time_t對象創建一個Timestamp:

static Timestamp fromEpochTime(std::time_t t);

用UtcTimeVal對象創建一個 Timestamp:

static Timestamp fromUtcTime(UtcTimeVal val);

返回時間解析度,即 Units per second。因為 Poco::TimeStamp 的最小解析度 為微妙,所以該函數都返回 1000000:

static TimeVal resolution ();

轉載請著名來自柳大的CSDN博客: Blog.CSDN.net/Poechant

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved