std::chrono::duration<Rep,Period>::operator+=, -=, *=, /=, %=
Von de.cppreference.net
duration& operator+=( const duration& d );
|
(1) | (seit C++11) (constexpr seit C++17) |
duration& operator-=( const duration& d );
|
(2) | (seit C++11) (constexpr seit C++17) |
duration& operator*=( const rep& rhs );
|
(3) | (seit C++11) (constexpr seit C++17) |
duration& operator/=( const rep& rhs );
|
(4) | (seit C++11) (constexpr seit C++17) |
duration& operator%=( const rep& rhs );
|
(5) | (seit C++11) (constexpr seit C++17) |
duration& operator%=( const duration& rhs );
|
(6) | (seit C++11) (constexpr seit C++17) |
Führt zusammengesetzte Zuweisungen zwischen zwei Dauern mit derselben Periode oder zwischen einer Dauer und einem Taktanzahlwert durch.
Wenn rep_ die Membervariable ist, die die Anzahl der Takte in diesem Dauerobjekt hält,
1) Äquivalent zu
rep_ += d.count(); return *this;.2) Äquivalent zu
rep_ -= d.count(); return *this;.3) Äquivalent zu
rep_ *= rhs; return *this;.4) Äquivalent zu
rep_ /= rhs; return *this;.5) Äquivalent zu
rep_ %= rhs; return *this;.6) Äquivalent zu
rep_ %= d.count(); return *this;.Parameter
| d | - | Dauer auf der rechten Seite des Operators |
| rhs | - | Anzahl der Ticks auf der rechten Seite des Operators |
Rückgabewert
Eine Referenz auf diese Dauer nach der Modifikation.
Beispiel
Diesen Code ausführen
#include <chrono>
#include <iostream>
int main()
{
std::chrono::minutes m(11);
m *= 2;
m += std::chrono::hours(10); // hours implicitly convert to minutes
std::cout << m.count() << " minutes equals "
<< std::chrono::duration_cast<std::chrono::hours>(m).count()
<< " hours and ";
m %= std::chrono::hours(1);
std::cout << m.count() << " minutes\n";
}
Ausgabe:
622 minutes equals 10 hours and 22 minutes
Siehe auch
|
erhöht oder verringert die Tickanzahl
(öffentliche Elementfunktion) |
|
|
implementiert arithmetische Operationen mit Dauern als Argumente
(Funktions-Template) |