std::chrono::duration<Rep,Period>::operator+=, -=, *=, /=, % =
来自 cppreference.com
(1) | ||
duration& operator+=( const duration& d ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
(2) | ||
duration& operator-=( const duration& d ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
(3) | ||
duration& operator*=( const rep& rhs ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
(4) | ||
duration& operator/=( const rep& rhs ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
(5) | ||
duration& operator%=( const rep& rhs ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
(6) | ||
duration& operator%=( const duration& rhs ); |
(自 C++11 起) (自 C++17 起为 constexpr) |
|
在具有相同周期的两个持续时间之间或在持续时间和滴答计数值之间执行复合赋值。
如果 rep_
是保存此持续时间对象中滴答次数的成员变量,则
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 | - | 运算符右侧的持续时间 |
rhs | - | 运算符右侧的滴答次数 |
[编辑] 返回值
修改后此持续时间的引用。
[编辑] 示例
运行此代码
#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
[编辑] 另请参见
递增或递减滴答计数 (公共成员函数) | |
使用持续时间作为参数实现算术运算 (函数模板) |