cpp / latest / chrono / duration / operator_arith2.html /

std::chrono::duration<Rep,Period>::operator++, std::chrono::duration<Rep,Period>::operator--

(1)
duration& operator++();
(until C++17)
constexpr duration& operator++();
(since C++17)
(2)
duration operator++(int);
(until C++17)
constexpr duration operator++(int);
(since C++17)
(3)
duration& operator--();
(until C++17)
constexpr duration& operator--();
(since C++17)
(4)
duration operator--(int);
(until C++17)
constexpr duration operator--(int);
(since C++17)

Increments or decrements the number of ticks for this duration.

If rep_ is a member variable holding the number of ticks in a duration object,

1) Equivalent to ++rep_; return *this;
2) Equivalent to return duration(rep_++)
3) Equivalent to --rep_; return *this;
4) Equivalent to return duration(rep_--);

Parameters

(none).

Return value

1,3) a reference to this duration after modification
2,4) a copy of the duration made before modification

Example

#include <chrono>
#include <iostream>
 
int main()
{
    std::chrono::hours h(1);
    std::chrono::minutes m = ++h;
    m--;
    std::cout << m.count() << " minutes\n";
}

Output:

119 minutes

See also

implements compound assignment between two durations
(public member function)
(C++11)
implements arithmetic operations with durations as arguments
(function template)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/chrono/duration/operator_arith2