std::chrono Namespace Reference
Utilities » Time

## Classes

struct | duration
struct | duration_values
struct | time_point
struct | treat_as_floating_point

## Typedefs

template<typename _Rep1 , typename _Rep2 , typename _CRep = typename common_type<_Rep1, _Rep2>::type>
using | __common_rep_t = typename enable_if< is_convertible< const _Rep2 &, _CRep >::value, _CRep >::type
template<typename _Tp >
using | __disable_if_is_duration = typename enable_if<!__is_duration< _Tp >::value, _Tp >::type
template<typename _Tp >
using | __enable_if_is_duration = typename enable_if< __is_duration< _Tp >::value, _Tp >::type
typedef duration< int64_t, ratio< 3600 > > | hours
typedef duration< int64_t, micro > | microseconds
typedef duration< int64_t, milli > | milliseconds
typedef duration< int64_t, ratio< 60 > > | minutes
typedef duration< int64_t, nano > | nanoseconds
typedef duration< int64_t > | seconds

## Functions

template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration< _ToDur > | duration_cast (const duration< _Rep, _Period > &__d)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator!= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator!= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > | operator% (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type | operator% (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Rep1 , typename _Rep2 , typename _Period >
constexpr duration< __common_rep_t< _Rep2, _Rep1 >, _Period > | operator* (const _Rep1 &__s, const duration< _Rep2, _Period > &__d)
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, _Rep2 >, _Period > | operator* (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type | operator+ (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Clock , typename _Dur2 >
constexpr time_point< _Clock, typename common_type< duration< _Rep1, _Period1 >, _Dur2 >::type > | operator+ (const duration< _Rep1, _Period1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > | operator+ (const time_point< _Clock, _Dur1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type | operator- (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > | operator- (const time_point< _Clock, _Dur1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr common_type< _Dur1, _Dur2 >::type | operator- (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > | operator/ (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< _Rep1, _Rep2 >::type | operator/ (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator< (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator< (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator<= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator<= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator== (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator== (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator> (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator> (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool | operator>= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool | operator>= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if< __is_duration< _ToDur >::value, time_point< _Clock, _ToDur > >::type | time_point_cast (const time_point< _Clock, _Dur > &__t)

## Detailed Description

ISO C++ 2011 entities sub-namespace for time and date.

## Typedef Documentation

## __common_rep_t

template<typename _Rep1 , typename _Rep2 , typename _CRep = typename common_type<_Rep1, _Rep2>::type>

using std::chrono::__common_rep_t = typedef typename enable_if<is_convertible<const _Rep2&, _CRep>::value, _CRep>::type

Definition at line 478 of file chrono.

## __disable_if_is_duration

template<typename _Tp >

using std::chrono::__disable_if_is_duration = typedef typename enable_if<!__is_duration<_Tp>::value, _Tp>::type

Definition at line 185 of file chrono.

## __enable_if_is_duration

template<typename _Tp >

using std::chrono::__enable_if_is_duration = typedef typename enable_if<__is_duration<_Tp>::value, _Tp>::type

Definition at line 181 of file chrono.

## hours

typedef duration< int64_t , ratio<3600> > std::chrono::hours

hours

Definition at line 620 of file chrono.

## microseconds

typedef duration< int64_t , micro> std::chrono::microseconds

microseconds

Definition at line 608 of file chrono.

## milliseconds

typedef duration< int64_t , milli> std::chrono::milliseconds

milliseconds

Definition at line 611 of file chrono.

## minutes

typedef duration< int64_t , ratio< 60> > std::chrono::minutes

minutes

Definition at line 617 of file chrono.

## nanoseconds

typedef duration< int64_t , nano> std::chrono::nanoseconds

nanoseconds

Definition at line 605 of file chrono.

## seconds

typedef duration< int64_t > std::chrono::seconds

seconds

Definition at line 614 of file chrono.

## Function Documentation

## duration_cast()

template<typename _ToDur , typename _Rep , typename _Period >

constexpr __enable_if_is_duration< _ToDur > std::chrono::duration_cast | ( | const duration< _Rep, _Period > & | __d | ) |

constexpr

duration_cast

Definition at line 191 of file chrono.

## operator!=() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator!= | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 569 of file chrono.

## operator!=() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator!= | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 774 of file chrono.

## operator%() [1/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >

constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > std::chrono::operator% | ( | const duration< _Rep1, _Period > & | __d,
|  | const _Rep2 & | __s
| ) |  |

constexpr

Definition at line 521 of file chrono.

## operator%() [2/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type std::chrono::operator% | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 532 of file chrono.

## operator*() [1/2]

template<typename _Rep1 , typename _Rep2 , typename _Period >

constexpr duration< __common_rep_t< _Rep2, _Rep1 >, _Period > std::chrono::operator* | ( | const _Rep1 & | __s,
|  | const duration< _Rep2, _Period > & | __d
| ) |  |

constexpr

Definition at line 492 of file chrono.

## operator*() [2/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >

constexpr duration< __common_rep_t< _Rep1, _Rep2 >, _Period > std::chrono::operator* | ( | const duration< _Rep1, _Period > & | __d,
|  | const _Rep2 & | __s
| ) |  |

constexpr

Definition at line 483 of file chrono.

## operator+() [1/3]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type std::chrono::operator+ | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 450 of file chrono.

## operator+() [2/3]

template<typename _Rep1 , typename _Period1 , typename _Clock , typename _Dur2 >

constexpr time_point< _Clock, typename common_type< duration< _Rep1, _Period1 >, _Dur2 >::type > std::chrono::operator+ | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 738 of file chrono.

## operator+() [3/3]

template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >

constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > std::chrono::operator+ | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 725 of file chrono.

## operator-() [1/3]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type std::chrono::operator- | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 463 of file chrono.

## operator-() [2/3]

template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >

constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > std::chrono::operator- | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 751 of file chrono.

## operator-() [3/3]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr common_type< _Dur1, _Dur2 >::type std::chrono::operator- | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 762 of file chrono.

## operator/() [1/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >

constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > std::chrono::operator/ | ( | const duration< _Rep1, _Period > & | __d,
|  | const _Rep2 & | __s
| ) |  |

constexpr

Definition at line 498 of file chrono.

## operator/() [2/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr common_type< _Rep1, _Rep2 >::type std::chrono::operator/ | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 508 of file chrono.

## operator<() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator< | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 556 of file chrono.

## operator<() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator< | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 779 of file chrono.

## operator<=() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator<= | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 575 of file chrono.

## operator<=() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator<= | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 785 of file chrono.

## operator==() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator== | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 545 of file chrono.

## operator==() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator== | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 768 of file chrono.

## operator>() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator> | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 583 of file chrono.

## operator>() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator> | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 792 of file chrono.

## operator>=() [1/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >

constexpr bool std::chrono::operator>= | ( | const duration< _Rep1, _Period1 > & | __lhs,
|  | const duration< _Rep2, _Period2 > & | __rhs
| ) |  |

constexpr

Definition at line 590 of file chrono.

## operator>=() [2/2]

template<typename _Clock , typename _Dur1 , typename _Dur2 >

constexpr bool std::chrono::operator>= | ( | const time_point< _Clock, _Dur1 > & | __lhs,
|  | const time_point< _Clock, _Dur2 > & | __rhs
| ) |  |

constexpr

Definition at line 798 of file chrono.

## time_point_cast()

template<typename _ToDur , typename _Clock , typename _Dur >

constexpr enable_if< __is_duration< _ToDur >::value, time_point< _Clock, _ToDur > >::type std::chrono::time_point_cast | ( | const time_point< _Clock, _Dur > & | __t | ) |

constexpr

time_point_cast

Definition at line 684 of file chrono.