std::chrono:: clock_time_conversion
|
Definiert im Header
<chrono>
|
||
|
template
<
class
Dest,
class
Source
>
struct clock_time_conversion { } ; |
(seit C++20) | |
std::chrono::clock_time_conversion
ist ein Merkmal (Trait), das festlegt, wie ein
std::chrono::time_point
der
Source
-Uhr in einen Zeitpunkt der
Dest
-Uhr umgewandelt wird. Dies geschieht durch Bereitstellung eines const-aufrufbaren
operator()
, der ein Argument vom Typ
std::
chrono
::
time_point
<
Source, Duration
>
akzeptiert und einen
std::
chrono
::
time_point
<
Dest, OtherDuration
>
zurückgibt, der einen äquivalenten Zeitpunkt repräsentiert. Die Dauer des zurückgegebenen Zeitpunkts wird aus der Quelldauer auf eine Weise berechnet, die für jede Spezialisierung variiert.
clock_time_conversion
wird normalerweise nur indirekt über
std::chrono::clock_cast
verwendet.
Ein Programm kann
clock_time_conversion
spezialisieren, falls mindestens einer der Template-Parameter ein benutzerdefinierter Clock-Typ ist.
Die primäre Vorlage ist eine leere Struktur. Der Standard definiert die folgenden Spezialisierungen:
|
template
<
class
Clock
>
struct clock_time_conversion < Clock, Clock > ; |
(1) | (seit C++20) |
|
template
<>
struct clock_time_conversion < std:: chrono :: system_clock , std:: chrono :: system_clock > ; |
(2) | (seit C++20) |
|
template
<>
struct clock_time_conversion < std:: chrono :: utc_clock , std:: chrono :: utc_clock > ; |
(3) | (seit C++20) |
|
template
<>
struct clock_time_conversion < std:: chrono :: system_clock , std:: chrono :: utc_clock > ; |
(4) | (seit C++20) |
|
template
<>
struct clock_time_conversion < std:: chrono :: utc_clock , std:: chrono :: system_clock > ; |
(5) | (seit C++20) |
|
template
<
class
Clock
>
struct clock_time_conversion < Clock, std:: chrono :: system_clock > ; |
(6) | (seit C++20) |
|
template
<
class
Clock
>
struct clock_time_conversion < std:: chrono :: system_clock , Clock > ; |
(7) | (seit C++20) |
|
template
<
class
Clock
>
struct clock_time_conversion < Clock, std:: chrono :: utc_clock > ; |
(8) | (seit C++20) |
|
template
<
class
Clock
>
struct clock_time_conversion < std:: chrono :: utc_clock , Clock > ; |
(9) | (seit C++20) |
operator()
gibt eine Kopie des Arguments zurück.
operator()
ruft
std::chrono::utc_clock::to_sys
und
std::chrono::utc_clock::from_sys
entsprechend auf.
Clock
from_sys
und
to_sys
unterstützt:
operator()
ruft
Clock
::
to_sys
und
Clock
::
from_sys
entsprechend auf.
Clock
from_utc
und
to_utc
unterstützt:
operator()
ruft
Clock
::
to_utc
und
Clock
::
from_utc
entsprechend auf.
Inhaltsverzeichnis |
Memberfunktionen
Jede Spezialisierung hat einen implizit deklarierten Standardkonstruktor, Kopierkonstruktor, Verschiebekonstruktor, Kopierzuweisungsoperator, Verschiebezuweisungsoperator und Destruktor.
std::chrono::clock_time_conversion:: operator()
|
template
<
class
Duration
>
std::
chrono
::
time_point
<
Clock, Duration
>
|
(1) | (Mitglied der Spezialisierung (1) ) |
|
template
<
class
Duration
>
std::
chrono
::
sys_time
<
Duration
>
|
(2) | (Mitglied der Spezialisierung (2) ) |
|
template
<
class
Duration
>
std::
chrono
::
utc_time
<
Duration
>
|
(3) | (Mitglied der Spezialisierung (3) ) |
|
template
<
class
Duration
>
std::
chrono
::
sys_time
<
Duration
>
|
(4) | (Mitglied der Spezialisierung (4) ) |
|
template
<
class
Duration
>
std::
chrono
::
utc_time
<
Duration
>
|
(5) | (Mitglied der Spezialisierung (5) ) |
|
template
<
class
Duration
>
auto
operator
(
)
(
const
std::
chrono
::
sys_time
<
Duration
>
&
t
)
const
|
(6) | (Mitglied der Spezialisierung (6) ) |
|
template
<
class
Duration
>
auto
operator
(
)
(
const
std::
chrono
::
time_point
<
SourceClock, Duration
>
&
t
)
const
|
(7) | (Mitglied der Spezialisierung (7) ) |
|
template
<
class
Duration
>
auto
operator
(
)
(
const
std::
chrono
::
utc_time
<
Duration
>
&
t
)
const
|
(8) | (Mitglied der Spezialisierung (8) ) |
|
template
<
class
Duration
>
auto
operator
(
)
(
const
std::
chrono
::
time_point
<
Clock, Duration
>
&
t
)
const
|
(9) | (Mitglied der Spezialisierung (9) ) |
Konvertiert das Argument std::chrono::time_point zur Zieluhr.
t
unverändert zurück.
Duration
eine gültige Spezialisierung von
std::chrono::duration
ist.
Duration
eine gültige Spezialisierung von
std::chrono::duration
ist.
Duration
eine gültige Spezialisierung von
std::chrono::duration
ist.
Duration
eine gültige Spezialisierung von
std::chrono::duration
ist.
Parameter
| t | - | Zeitpunkt zur Konvertierung |
Rückgabewert
Das Ergebnis der Konvertierung wie oben beschrieben:
Siehe auch
|
(C++20)
|
Konvertiert Zeitpunkte einer Uhr zu einer anderen
(Funktions-Template) |