Struttura is_clock
Tratto di tipo che determina se il tipo specificato soddisfa i requisiti per essere un orologio.
Sintassi
template<class T> struct is_clock; // C++20
Modello di variabile helper
template<class T> inline constexpr bool is_clock_v = is_clock<T>::value; // C++20
Parametri
T
Tipo da testare.
Membri
Nome | Descrizione |
---|---|
value |
Indica se T soddisfa i requisiti per essere un orologio. |
operator () |
Restituisce value . |
operator bool |
Restituisce value . |
Osservazioni:
Un orologio ha una rep
funzione , period
, time_point
duration
, is_steady
, e .now()
Per altri dettagli sui requisiti per un orologio C++17, vedere Requisiti di Cpp17Clock.
Il codice seguente funziona perché is_clock
, deriva da Cpp17UnaryTypeTrait
, che deriva da integral_constant
. Si tratta di value_type
dove , che è un bool
, e type
, che è un std::integral_constant<bool, value>
provengono da .
Esempio
#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
Requisiti
Intestazione: <chrono>
Spazio dei nomi: std::chrono
Opzione del compilatore: /std:c++latest
Value
Ottiene un valore che indica se il tipo specificato soddisfa i requisiti di un orologio.
static constexpr T value;
Valore restituito
true
se il tipo specificato soddisfa i requisiti per essere un orologio. In caso contrario, false
.
operator()
constexpr value_type operator()() const noexcept
Restituisce value
, ovvero se il tipo specificato soddisfa i requisiti di un orologio.
Valore restituito
true
se il tipo specificato soddisfa i requisiti per essere un orologio. In caso contrario, false
.
operator bool
constexpr operator value_type() const noexcept
Restituisce value
, ovvero se il tipo specificato soddisfa i requisiti di un orologio.
Valore restituito
true
se il tipo specificato soddisfa i requisiti per essere un orologio. In caso contrario, false
.