当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust BitXorAssign用法及代码示例


本文简要介绍rust语言中 Trait std::ops::BitXorAssign 的用法。

用法

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

按位异或赋值运算符 ^=

例子

use std::ops::BitXorAssign;

#[derive(Debug, PartialEq)]
struct Personality {
    has_soul: bool,
    likes_knitting: bool,
}

impl BitXorAssign for Personality {
    fn bitxor_assign(&mut self, rhs: Self) {
        self.has_soul ^= rhs.has_soul;
        self.likes_knitting ^= rhs.likes_knitting;
    }
}

let mut personality = Personality { has_soul: false, likes_knitting: true };
personality ^= Personality { has_soul: true, likes_knitting: true };
assert_eq!(personality, Personality { has_soul: true, likes_knitting: false});

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Trait std::ops::BitXorAssign。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。