is_clock
structure
A type trait that determines whether the specified type meets the requirements to be a clock.
Syntax
template<class T> struct is_clock; // C++20
Helper variable template
template<class T> inline constexpr bool is_clock_v = is_clock<T>::value; // C++20
Parameters
T
The type to test.
Members
Name | Description |
---|---|
value |
Indicates whether T satisfies the requirements to be a clock. |
operator () |
Returns value . |
operator bool |
Returns value . |
Remarks
A clock has a rep
, period
, duration
, time_point
, is_steady
, and a now()
function.
For more details about the requirements to be a C++17 clock, see Cpp17Clock requirements.
The following code works because is_clock
, derives from Cpp17UnaryTypeTrait
, which derives from integral_constant
. This is where value_type
, which is a bool
, and type
, which is a std::integral_constant<bool, value>
come from.
Example
#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
Requirements
Header: <chrono>
Namespace: std::chrono
Compiler Option: /std:c++latest
Value
Get whether the specified type satisfies the requirements to be a clock.
static constexpr T value;
Return value
true
if specified type meets the requirements to be a clock. Otherwise, false
.
operator()
constexpr value_type operator()() const noexcept
Returns value
, that is, whether the specified type meets the requirements to be a clock.
Return value
true
if specified type meets the requirements to be a clock. Otherwise, false
.
operator bool
constexpr operator value_type() const noexcept
Returns value
, that is, whether the specified type meets the requirements to be a clock.
Return value
true
if specified type meets the requirements to be a clock. Otherwise, false
.
See also
Feedback
https://aka.ms/ContentUserFeedback.
În curând: Pe parcursul anului 2024, vom elimina treptat Probleme legate de GitHub ca mecanism de feedback pentru conținut și îl vom înlocui cu un nou sistem de feedback. Pentru mai multe informații, consultați:Trimiteți și vizualizați feedback pentru