std::chrono:: system_clock
|
Определено в заголовочном файле
<chrono>
|
||
|
class
system_clock
;
|
(начиная с C++11) | |
Класс
std::chrono::system_clock
представляет системные настенные часы реального времени.
Он может не быть монотонным: на большинстве систем системное время может быть изменено в любой момент. Это единственные часы в C++, которые способны отображать свои временные точки в C-стиль.
std::chrono::system_clock
соответствует требованиям
TrivialClock
.
|
Эпоха
|
(до C++20) |
|
|
(начиная с C++20) |
Содержание |
Семейство временных точек
|
Определено в пространстве имен
std::chrono
|
||
|
template
<
class
Duration
>
using sys_time = std:: chrono :: time_point < std :: chrono :: system_clock , Duration > ; |
(начиная с C++20) | |
|
using
sys_seconds
=
sys_time
<
std::
chrono
::
seconds
>
;
|
(начиная с C++20) | |
|
using
sys_days
=
sys_time
<
std::
chrono
::
days
>
;
|
(начиная с C++20) | |
выполняет потоковый вывод для
sys_time
(шаблон функции) |
|
парсит
sys_time
из потока согласно предоставленному формату
(шаблон функции) |
|
поддержка форматирования для
sys_time
(специализация шаблона класса) |
Типы членов
| Тип члена | Определение |
rep
|
знаковый арифметический тип, представляющий количество тиков в продолжительности часов |
period
|
тип std::ratio , представляющий период тика часов в секундах |
duration
|
std:: chrono :: duration < rep, period > , способный представлять отрицательные продолжительности |
time_point
|
std:: chrono :: time_point < std :: chrono :: system_clock > |
Константы-члены
|
constexpr bool
is_steady
[static]
|
true
если время между тактами всегда постоянно, т.е. вызовы
now()
возвращают значения, которые монотонно возрастают даже в случае корректировки внешних часов, иначе
false
(публичная статическая константа-член) |
Функции-члены
|
[static]
|
возвращает
std::chrono::time_point
представляющий текущий момент времени
(публичная статическая функция-член) |
|
[static]
|
преобразует точку времени системных часов в
std::time_t
(публичная статическая функция-член) |
|
[static]
|
преобразует
std::time_t
в точку времени системных часов
(публичная статическая функция-член) |
Примечания
Время
system_clock
может быть внутренне скорректировано операционной системой в любой момент, например, из-за синхронизации NTP или изменения системных часов пользователем. Однако переход на летнее время и изменения часовых поясов не влияют на него, поскольку оно основано на
UTC
временной зоне.
Смотрите также
|
(C++11)
|
монотонные часы, которые никогда не будут корректироваться
(класс) |
|
(C++11)
|
часы с наименьшим доступным периодом тика
(класс) |