Namensräume
Varianten

operator+,-,*,/,%(std::chrono::duration)

Aus cppreference.com
< cpp‎ | chrono‎ | duration

 
 
 
 
std::chrono::duration
Member-Funktionen
Original:
Member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
duration::duration
duration::operator=
duration::count
duration::zero
duration::min
duration::max
duration::operator+
duration::operator-
duration::operator++
duration::operator--
duration::operator+=
duration::operator-=
duration::operator*=
duration::operator/=
duration::operator%=
Non-Member-Funktionen
Original:
Non-member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
common_type
operator+
operator-
operator*
operator/
operator%
operator==
operator!=
operator<
operator<=
operator>
operator>=
duration_cast
Helper-Klassen
Original:
Helper classes
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
treat_as_floating_point
duration_values
 
template<class Rep1, class Period1, class Rep2, class Period2 >

typenamestd::common_type<duration<Rep1,Period1>, duration<Rep2,Period2>>::type
    constexpr operator+(const duration<Rep1,Period1>& lhs,

                         const duration<Rep2,Period2>& rhs );
(1)
template<class Rep1, class Period1, class Rep2, class Period2 >

typenamestd::common_type<duration<Rep1,Period1>, duration<Rep2,Period2>>::type
    constexpr operator-(const duration<Rep1,Period1>& lhs,

                         const duration<Rep2,Period2>& rhs );
(2)
template<class Rep1, class Period, class Rep2 >

duration<typenamestd::common_type<Rep1,Rep2>::type, Period>
    constexpr operator*(const duration<Rep1,Period>& d,

                         const Rep2& s );
(3)
template<class Rep1, class Rep2, class Period >

duration<typenamestd::common_type<Rep1,Rep2>::type, Period>
    constexpr operator*(const Rep1& s,

                         const duration<Rep2,Period>& d );
(4)
template<class Rep1, class Period, class Rep2 >

duration<typename common_type<Rep1,Rep2>::type, Period>
    constexpr operator/(const duration<Rep1,Period>& d,

                         const Rep2& s );
(5)
template<class Rep1, class Period1, class Rep2, class Period2 >

typenamestd::common_type<Rep1,Rep2>::type
    constexpr operator/(const duration<Rep1,Period1>& lhs,

                         const duration<Rep2,Period2>& rhs );
(6)
template<class Rep1, class Period, class Rep2 >

duration<typename common_type<Rep1,Rep2>::type, Period>
    constexpr operator%(const duration<Rep1, Period>& d,

                         const Rep2& s );
(7)
template<class Rep1, class Period1, class Rep2, class Period2 >

typename common_type<duration<Rep1,Period1>, duration<Rep2,Period2>>::type
constexpr operator%(const duration<Rep1,Period1>& lhs,

                     const duration<Rep2,Period2>& rhs );
(8)
Führt grundlegende arithmetische Operationen zwischen zwei Dauern oder zwischen einer Dauer und einer Taktanzahl .
Original:
Performs basic arithmetic operations between two durations or between a duration and a tick count.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
1)
Wandelt die beiden Dauern zu ihrer gemeinsamen Typ und erzeugt eine Laufzeit, deren Taktanzahl ist die Summe der Zählungen Zecke nach Umwandlung .
Original:
Converts the two durations to their common type and creates a duration whose tick count is the sum of the tick counts after conversion.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
2)
Wandelt die beiden Zeiträume, um ihre gemeinsamen Art und schafft eine Laufzeit, deren Taktanzahl ist die rhs Anzahl der Ticks aus der lhs Anzahl der Ticks nach der Konvertierung abgezogen .
Original:
Converts the two durations to their common type and creates a duration whose tick count is the rhs number of ticks subtracted from the lhs number of ticks after conversion.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
3-4)
Konvertiert die Dauer d um ein, deren rep ist die häufigste Art von Rep1 und Rep2 und Multiples die Anzahl der Ticks nach Umsetzung durch s .
Original:
Converts the duration d to one whose rep is the common type between Rep1 and Rep2, and multiples the number of ticks after conversion by s.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
5)
Konvertiert die Dauer d um ein, deren rep ist die häufigste Art von Rep1 und Rep2 und teilt die Anzahl der Ticks nach Umsetzung durch s
Original:
Converts the duration d to one whose rep is the common type between Rep1 and Rep2, and divides the number of ticks after conversion by s
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
6)
Wandelt die beiden Zeiträume, um ihre gemeinsamen Art und teilt die Taktanzahl der lhs nach der Konvertierung durch die Taktanzahl der rhs nach der Konvertierung. Beachten Sie, dass der Rückgabewert dieses Operators nicht eine Dauer .
Original:
Converts the two durations to their common type and divides the tick count of lhs after conversion by the tick count of rhs after conversion. Note that the return value of this operator is not a duration.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
7)
Konvertiert die Dauer d um ein, deren rep ist die häufigste Art von Rep1 und Rep2 und schafft eine Laufzeit, deren Taktanzahl ist der Rest der Division der Anzahl der Ticks, nach der Konvertierung durch s .
Original:
Converts the duration d to one whose rep is the common type between Rep1 and Rep2, and creates a duration whose tick count is the remainder of the division of the tick count, after conversion, by s.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
8)
Wandelt die beiden Zeiträume, um ihre gemeinsamen Art und schafft eine Laufzeit, deren Taktanzahl ist der Rest der Zecke zählt nach der Konvertierung .
Original:
Converts the two durations to their common type and creates a duration whose tick count is the remainder of the tick counts after conversion.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten]Parameter

lhs -
Dauer auf der linken Seite des Fahrers
Original:
duration on the left-hand side of the operator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
rhs -
Dauer auf der rechten Seite des Fahrers
Original:
duration on the right-hand side of the operator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
d -
die Dauer Argument für Mixed-Argument Betreiber
Original:
the duration argument for mixed-argument operators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
s -
Taktanzahl Argument für Mixed-Argument Betreiber
Original:
tick count argument for mixed-argument operators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten]Rückgabewert

Vorausgesetzt, dass CD ist die Funktion Rückgabetyp und CR<A, B>=std::common_type<A, B>::type, dann:
Original:
Assuming that CD is the function return type and CR<A, B>=std::common_type<A, B>::type, then:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
1)CD(CD(lhs).count()+ CD(rhs).count())
2)CD(CD(lhs).count()- CD(rhs).count())
3-4)CD(CD(d).count()* s)
5)CD(CD(d).count()/ s).
6)
CD(lhs).count()/ CD(rhs).count() (der Rückgabetyp dieses Operators ist keine Dauer)
Original:
CD(lhs).count()/ CD(rhs).count() (the return type of this operator is not a duration)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
7)CD(CD(d).count()% s)
8)CD(CD(lhs).count()% CD(rhs).count())


[Bearbeiten]Beispiel

#include <chrono>#include <iostream>int main(){// simple arithmeticstd::chrono::seconds s =std::chrono::hours(1)+2*std::chrono::minutes(10)+std::chrono::seconds(70)/10;   std::cout<<"1 hour + 2*10 min + 70/10 sec = "<< s.count()<<" seconds\n";   // difference between dividing a duration by a number// and dividing a duration by another durationstd::cout<<"Dividing that by 2 minutes gives "<< s /std::chrono::minutes(2)<<'\n';std::cout<<"Dividing that by 2 gives "<<(s /2).count()<<" sconds\n";   // the remainder operator is useful in determining where in a time// frame is this particular duration, e.g. to break it down into hours,// minutes, and seconds:std::cout<< s.count()<<" seconds is "<<std::chrono::duration_cast<std::chrono::hours>( s ).count()<<" hours, "<<std::chrono::duration_cast<std::chrono::minutes>( s %std::chrono::hours(1)).count()<<" minutes, "<<std::chrono::duration_cast<std::chrono::seconds>( s %std::chrono::minutes(1)).count()<<" seconds\n";}

Output:

1 hour + 2*10 min + 70/10 sec = 4807 seconds Dividing that by 2 minutes gives 40 Dividing that by 2 gives 2403 sconds 4807 seconds is 1 hours, 20 minutes, 7 seconds
close