Skip to content

Latest commit

 

History

History
75 lines (61 loc) · 2.02 KB

op_constructor.md

File metadata and controls

75 lines (61 loc) · 2.02 KB

コンストラクタ

  • chrono[meta header]
  • std::chrono[meta namespace]
  • time_point[meta class]
  • function[meta id-type]
  • cpp11[meta cpp]
time_point();           // (1) C++11
constexpr time_point(); // (1) C++14

explicit time_point(const duration& d);           // (2) C++11
constexpr explicit time_point(const duration& d); // (2) C++14

template <class Duration2>
time_point(const time_point<clock, Duration2>& t);           // (3) C++14

template <class Duration2>
constexpr time_point(const time_point<clock, Duration2>& t); // (3) C++14

time_pointの構築

  • (1) : デフォルトコンストラクタ。エポックのtime_point(duration::zero())を生成する。
  • (2) : エポックからの経過時間からtime_pointを生成する。
  • (3) : 他のテンプレートパラメータを持つtime_pointからの変換コンストラクタ。

#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
  {
    time_point<system_clock> p; // エポック
    std::cout << p.time_since_epoch().count() << std::endl;
  }
  {
    time_point<system_clock> p(seconds(3)); // エポックから3秒後
    std::cout << p.time_since_epoch().count() << std::endl;
  }
  {
    time_point<system_clock, seconds> s(seconds(5)); // エポックから5秒後
    time_point<system_clock, milliseconds> m = s;    // 他のtime_pointに変換
    std::cout << m.time_since_epoch().count() << std::endl;
  }
}
  • system_clock[link /reference/chrono/system_clock.md]
  • time_since_epoch()[link time_since_epoch.md]
  • count()[link /reference/chrono/duration/count.md]
  • seconds[link /reference/chrono/seconds.md]
  • milliseconds[link /reference/chrono/milliseconds.md]

出力

0
3000000
5000

バージョン

言語

  • C++11

処理系

参照