Namespaces
Variants

std::chrono::system_clock:: from_time_t

From cppreference.net
static std :: chrono :: system_clock :: time_point from_time_t ( std:: time_t t ) noexcept ;
(C++11以降)

t を2つの型のうちより粗い精度を使用して、時間ポイント型に変換します。

time_point の精度が低い場合、値が丸められるか切り捨てられるかは実装定義です。

目次

パラメータ

t - std::time_t 変換する値

戻り値

std::chrono::system_clock::time_point 型の値で、 t を表す。

#include <chrono>
#include <ctime>
#include <iostream>
#include <thread>
int main()
{
    using namespace std::chrono_literals;
    const std::time_t t = std::time(nullptr); // 通常「1秒」精度を持つ
    const auto from = std::chrono::system_clock::from_time_t(t);
    std::this_thread::sleep_for(500ms);
    const auto diff = std::chrono::system_clock::now() - from;
    std::cout << diff << " ("
              << std::chrono::round<std::chrono::milliseconds>(diff)
              << ")\n";
}

出力例:

987654321ns (987ms)

関連項目

[static]
システムクロックの時間点を std::time_t に変換する
(public static member function)