次の方法で共有


is_clock 構造体

指定された型が、クロックの要件を満たしているかどうかを判断する型の特徴。

構文

template<class T> struct is_clock; // C++20

ヘルパー変数テンプレート

 template<class T> inline constexpr bool is_clock_v = is_clock<T>::value; // C++20

パラメーター

T
テストする型。

メンバー

名前 説明
value T がクロックの要件を満たしているかどうかを示します。
operator () value を返します。
operator bool value を返します。

解説

クロックには、repperioddurationtime_pointis_steady、および now() 関数があります。

C++17 クロックの要件の詳細については、「Cpp17Clock の要件」を参照してください。

is_clock は、integral_constant から派生する Cpp17UnaryTypeTrait から派生するため、次のコードは機能します。 ここは、value_type (bool) および type (std::integral_constant<bool, value>) が派生する場所です。

#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    is_clock<system_clock> ic;

    std::cout << std::boolalpha << ic.value << ", " << ic() << ", " << (bool)ic;
}
true, true, true

要件

ヘッダー: <chrono>

名前空間: std::chrono

コンパイラ オプション: /std:c++latest

Value

指定された型がクロックの要件を満たしているかどうかを取得します。

static constexpr T value;

戻り値

指定された型がクロックの要件を満たしている場合は true。 それ以外の場合は false

operator()

constexpr value_type operator()() const noexcept

value を返します。つまり、指定された型がクロックの要件を満たしているかどうかを返します。

戻り値

指定された型がクロックの要件を満たしている場合は true。 それ以外の場合は false

operator bool

constexpr operator value_type() const noexcept

value を返します。つまり、指定された型がクロックの要件を満たしているかどうかを返します。

戻り値

指定された型がクロックの要件を満たしている場合は true。 それ以外の場合は false

関連項目

<chrono>
ヘッダー ファイル リファレンス