std::chrono::duration::operator+(unary),(3)

NAME
std::chrono::duration::operator+(unary), - std::chrono::duration::operator+(unary),

Synopsis
   constexpr duration operator+() const; (until C++17)
   constexpr std::common_type_t<duration> (since C++17)
   operator+() const; (1)
   constexpr duration operator-() const; (until C++17)
   constexpr std::common_type_t<duration> (2) (since C++17)
   operator-() const;
   Implements unary plus and unary minus for the durations.
   If rep_ is a member variable holding the number of ticks in a duration object, and D
   is the return type,
   1) Equivalent to return D(*this);.
   2) Equivalent to return D(-rep_);.

Parameters
   (none)

Return value
   1) A copy of this duration object.
   2) A copy of this duration object, with the number of ticks negated.

Example
// Run this code
 #include <chrono>
 #include <iostream>
 int main()
 {
     constexpr std::chrono::seconds s1(-052);
     constexpr std::chrono::seconds s2 = -s1;
     std::cout << "Negated " << s1 << " are " << s2 << '\n';
 }

Output:
 Negated -42s are 42s

See also
   operator++
   operator++(int) increments or decrements the tick count
   operator-- (public member function)
   operator--(int)
   operator+
   operator-
   operator* implements arithmetic operations with durations as arguments
   operator/ (function template)
   operator%
   (C++11)