首页 > 代码库 > rust ownership 系统
rust ownership 系统
### 对象销毁规则1 未被使用的函数返回值2 被let绑定的值, 在函数末尾销毁,除非被moved```let v = obj::new("a");other_fun(v); // v被move了, v在other_fun里面销毁,而不是当前函数的结尾```3 被替换的值将销毁```let mut v = obj:new("a");v = obj:new("b"); // a destoryed```Box: 把创建的值放到heap上, 在stack留下一个指针, 当box删掉的时候, 释放box里的对象 ( cpp raii)### gc```Rc::new(Obj::new("A"))// clone 的时候 rc加一, rc为0的时候销毁// 可变对象Rc::new(RefCell::new(Obj::new("A")));obj.borrow_mut();rc的多线程版 arc```
rust ownership 系统
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。