operator+, operator-(std::chrono::time_point)
Определено в заголовочном файле <chrono> | ||
|---|---|---|
template< class C, class D1, class R2, class P2 >
time_point<C, typename std::common_type<D1, duration<R2,P2>>::type>
operator+( const time_point<C,D1>& pt,
const duration<R2,P2>& d );
| (1) |
(начиная с C++11) (до C++14) |
template< class C, class D1, class R2, class P2 >
constexpr time_point<C, std::common_type_t<D1, duration<R2,P2>>>
operator+( const time_point<C,D1>& pt,
const duration<R2,P2>& d );
| (начиная с C++14) | |
template< class R1, class P1, class C, class D2 >
time_point<C, typename std::common_type<duration<R1,P1>,D2>::type>
operator+( const duration<R1,P1>& d,
const time_point<C,D2>& pt );
| (2) |
(начиная с C++11) (до C++14) |
template< class R1, class P1, class C, class D2 >
constexpr time_point<C, std::common_type_t<duration<R1,P1>,D2>>
operator+( const duration<R1,P1>& d,
const time_point<C,D2>& pt );
| (начиная с C++14) | |
template< class C, class D1, class R2, class P2 >
time_point<C, typename std::common_type<D1, duration<R2,P2>>::type>
operator-( const time_point<C,D1>& pt,
const duration<R2,P2>& d );
| (3) |
(начиная с C++11) (до C++14) |
template< class C, class D1, class R2, class P2 >
constexpr time_point<C, std::common_type_t<D1, duration<R2,P2>>>
operator-( const time_point<C,D1>& pt,
const duration<R2,P2>& d );
| (начиная с C++14) | |
template< class C, class D1, class D2 >
typename std::common_type<D1,D2>::type
operator-( const time_point<C,D1>& pt_lhs,
const time_point<C,D2>& pt_rhs );
| (4) |
(начиная с C++11) (до C++14) |
template< class C, class D1, class D2 >
constexpr std::common_type_t<D1,D2>
operator-( const time_point<C,D1>& pt_lhs,
const time_point<C,D2>& pt_rhs );
| (начиная с C++14) |
Выполняет операции сложения и вычитания с участием time_point.
1,2) Применяет смещение
d к pt. Фактически возвращает CT(pt.time_since_epoch() + d), где CT — тип возвращаемого значения.
3) Применяет смещение
d к pt в отрицательном направлении. Фактически возвращает CT(pt.time_since_epoch() - d), где CT — тип возвращаемого значения.
4) Вычисляет разность между
pt_lhs и pt_rhs.Параметры
| pt | - | момент времени, к которому применяется смещение |
| d | - | смещение времени |
| pt_lhs, pt_rhs | - | моменты времени, разность которых вычисляется |
Возвращаемое значение
1-3) Момент времени, полученный в результате применения смещения
d.
4) Длительность между моментами времени.
Исключения
Может генерировать исключения, определяемые реализацией.
Пример
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.
| Отчёт об ошибке | Применяется к | Поведение согласно опубликованной версии | Исправленное поведение |
|---|---|---|---|
| LWG 2739 | C++11 |
pt - d работал непредсказуемо для беззнаковых типов duration | поведение исправлено |
См. также
| изменяет момент времени на заданную длительность (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/chrono/time_point/operator_arith2