dha*_*rdy 6 operator-overloading rust
如何在自定义类型中使用"+ ="等复合运算符?
重载一些基本的运营商通过实施是可能的Add,Sub等等.但似乎没有任何支持+=,也没有x += y自动解释为x = x + y(从1.0 alpha版本).
现在支持,称为AddAssign(SubAssign,MulAssign...等).
这是一个基本的例子:
use std::ops::{Add, AddAssign};
struct Float2(f64, f64);
impl AddAssign for Float2 {
fn add_assign(&mut self, rhs: Float2) {
self.0 += rhs.0;
self.1 += rhs.1;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1763 次 |
| 最近记录: |