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

Header: <chrono>

Performs add and subtract operations involving a time_point.

# Declarations

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 );

(since C++11) (until 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 );

(since 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 );

(since C++11) (until 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 );

(since 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 );

(since C++11) (until 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 );

(since 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 );

(since C++11) (until 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 );

(since C++14)

# Parameters

# Example

This section is incompleteReason: no example

# Defect reports

DRApplied toBehavior as publishedCorrect behavior
LWG 2739C++11pt - d behaved erratically for unsigned durationsbehavior corrected

# See also