std::chrono::duration<Rep,Period>::operator+=, -=, *=, /=, %=
提供: cppreference.com
(1) | ||
duration& operator+=(const duration& d); |
(C++17未満) | |
constexpr duration& operator+=(const duration& d); |
(C++17以上) | |
(2) | ||
duration& operator-=(const duration& d); |
(C++17未満) | |
constexpr duration& operator-=(const duration& d); |
(C++17以上) | |
(3) | ||
duration& operator*=(const rep& rhs); |
(C++17未満) | |
constexpr duration& operator*=(const rep& rhs); |
(C++17以上) | |
(4) | ||
duration& operator/=(const rep& rhs); |
(C++17未満) | |
constexpr duration& operator/=(const rep& rhs); |
(C++17以上) | |
(5) | ||
duration& operator%=(const rep& rhs); |
(C++17未満) | |
constexpr duration& operator%=(const rep& rhs); |
(C++17以上) | |
(6) | ||
duration& operator%=(const duration& rhs); |
(C++17未満) | |
constexpr duration& operator%=(const duration& rhs); |
(C++17以上) | |
同じ刻み幅を持つ2つの duration 間で、または duration と刻み数値の間で、複合代入を行います。
rep_
がこの duration オブジェクトの刻み数を保持する変数だとした場合、
1) rep_ += d.count(); return *this; と同等です。
2) rep_ -= d.count(); return *this; と同等です。
3) rep_ *= rhs; return *this; と同等です。
4) rep_ /= rhs; return *this; と同等です。
5) rep_ %= rhs; return *this; と同等です。
6) rep_ %= d.count(); return *this; と同等です。
目次 |
[編集] 引数
d | - | 演算子の右側の duration |
rhs | - | 演算子の右側の刻み数 |
[編集] 戻り値
変更後のこの duration を指す参照。
[編集] 例
Run this code
#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"; }
出力:
622 minutes equals 10 hours and 22 minutes
[編集] 関連項目
刻み数をインクリメントまたはデクリメントします (パブリックメンバ関数) | |
引数として時間を取る算術演算を実装します (関数テンプレート) |