pub trait AddAssign<Rhs = Self> {
// Required method
fn add_assign(&mut self, rhs: Rhs);
}
Expand description
加法赋值运算符 +=
。
Examples
本示例创建一个 Point
结构体,该结构体实现 AddAssign
trait,然后演示对可变 Point
的添加分配。
use std::ops::AddAssign;
#[derive(Debug, Copy, Clone, PartialEq)]
struct Point {
x: i32,
y: i32,
}
impl AddAssign for Point {
fn add_assign(&mut self, other: Self) {
*self = Self {
x: self.x + other.x,
y: self.y + other.y,
};
}
}
let mut point = Point { x: 1, y: 0 };
point += Point { x: 2, y: 3 };
assert_eq!(point, Point { x: 3, y: 3 });
RunRequired Methods§
sourcefn add_assign(&mut self, rhs: Rhs)
fn add_assign(&mut self, rhs: Rhs)
Implementors§
impl AddAssign<&f32> for f32
impl AddAssign<&f64> for f64
impl AddAssign<&i8> for i8
impl AddAssign<&i8> for Saturating<i8>
impl AddAssign<&i8> for Wrapping<i8>
impl AddAssign<&i16> for i16
impl AddAssign<&i16> for Saturating<i16>
impl AddAssign<&i16> for Wrapping<i16>
impl AddAssign<&i32> for i32
impl AddAssign<&i32> for Saturating<i32>
impl AddAssign<&i32> for Wrapping<i32>
impl AddAssign<&i64> for i64
impl AddAssign<&i64> for Saturating<i64>
impl AddAssign<&i64> for Wrapping<i64>
impl AddAssign<&i128> for i128
impl AddAssign<&i128> for Saturating<i128>
impl AddAssign<&i128> for Wrapping<i128>
impl AddAssign<&isize> for isize
impl AddAssign<&isize> for Saturating<isize>
impl AddAssign<&isize> for Wrapping<isize>
impl AddAssign<&str> for String
实现用于追加到 String
的 +=
运算符。
这与 push_str
方法具有相同的行为。