问题描述
某些操作具有可以在调用操作时有效响应的特征,如下所示:
use std::ops;
#[derive(Debug)]
struct MyNum(u32);
impl ops::Add for MyNum {
type Output = Self;
fn add(self,b: Self) -> Self {
println!("Added {} and {}",self.0,b.0);
MyNum(self.0 + b.0)
}
}
fn main() {
let a = MyNum(1);
let b = MyNum(2);
let c = a + b;
println!("C = {}",c.0);
}
但是,作为docs状态:
由于赋值运算符(
=
)没有支持特征,因此无法重载其语义
我希望能够通过赋值运算符监听值何时发生变化。这个想法是要开发类似于Svelte library的东西,但要用Rust。捕获变量突变的最佳方法是什么?理想情况下,在编译阶段保留所有开销?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)