Namespaces
Variants

operator+, operator-(std::chrono::time_point)

От ru.cppreference.net
 
 
 
 
Определено в заголовочном файле <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++.

DR Applied to Behavior as published Correct behavior
LWG 2739 C++11 pt - d вел себя непредсказуемо для беззнаковых duration поведение исправлено

Смотрите также

изменяет временную точку на заданную длительность
(public member function)