is_clock
結構
判斷指定型別是否符合時鐘需求的類型特性。
語法
template<class T> struct is_clock; // C++20
Helper 變數範本
template<class T> inline constexpr bool is_clock_v = is_clock<T>::value; // C++20
參數
T
要測試的類型。
成員
名稱 | 描述 |
---|---|
value |
指出是否符合 T 時鐘的需求。 |
operator () |
傳回 value 。 |
operator bool |
傳回 value 。 |
備註
時鐘具有 rep
、 period
、 duration
、 time_point
、 is_steady
和 函 now()
式。
如需C++17時鐘需求的詳細資訊,請參閱 Cpp17Clock 需求。
下列程式代碼的運作方式是 ,因為 is_clock
衍生自 Cpp17UnaryTypeTrait
,其衍生自 integral_constant
。 這是 ,也就是 bool
、和 type
,這是 std::integral_constant<bool, value>
來自的位置value_type
。
範例
#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
。