23 General utilities library [utilities]

23.17 Time utilities [time]

23.17.5 Class template duration [time.duration]

23.17.5.3 duration arithmetic [time.duration.arithmetic]

constexpr common_type_t<duration> operator+() const;

Returns: common_­type_­t<duration>(*this).

constexpr common_type_t<duration> operator-() const;

Returns: common_­type_­t<duration>(-rep_­).

constexpr duration& operator++();

Effects: As if by ++rep_­.

Returns: *this.

constexpr duration operator++(int);

Returns: duration(rep_­++).

constexpr duration& operator--();

Effects: As if by --rep_­.

Returns: *this.

constexpr duration operator--(int);

Returns: duration(rep_­--).

constexpr duration& operator+=(const duration& d);

Effects: As if by: rep_­ += d.count();

Returns: *this.

constexpr duration& operator-=(const duration& d);

Effects: As if by: rep_­ -= d.count();

Returns: *this.

constexpr duration& operator*=(const rep& rhs);

Effects: As if by: rep_­ *= rhs;

Returns: *this.

constexpr duration& operator/=(const rep& rhs);

Effects: As if by: rep_­ /= rhs;

Returns: *this.

constexpr duration& operator%=(const rep& rhs);

Effects: As if by: rep_­ %= rhs;

Returns: *this.

constexpr duration& operator%=(const duration& rhs);

Effects: As if by: rep_­ %= rhs.count();

Returns: *this.