當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust SubAssign用法及代碼示例


本文簡要介紹rust語言中 Trait core::ops::SubAssign 的用法。

用法

pub trait SubAssign<Rhs = Self> {
    fn sub_assign(&mut self, rhs: Rhs);
}

減法賦值運算符 -=

例子

此示例創建一個實現 SubAssign 特征的 Point 結構,然後將 sub-assigning 演示為可變的 Point

use std::ops::SubAssign;

#[derive(Debug, Copy, Clone, PartialEq)]
struct Point {
    x: i32,
    y: i32,
}

impl SubAssign for Point {
    fn sub_assign(&mut self, other: Self) {
        *self = Self {
            x: self.x - other.x,
            y: self.y - other.y,
        };
    }
}

let mut point = Point { x: 3, y: 3 };
point -= Point { x: 2, y: 3 };
assert_eq!(point, Point {x: 1, y: 0});

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Trait core::ops::SubAssign。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。