当前位置: 首页 > news >正文

RUST持续学习 一点borrow问题的心得记录

写RUST的时候,我经常遇到一个报错 说哪已经mut borrow了 不能再次mut borrow
经过分析实验
我感觉最合理的做法是设计的时候就要给该对象够多的API
lightsys需要装载各种light,Point Spot
这里要么把lighsys传递给对应的light进行操作,要么把point传递给lightsys进行操作
经过我的BUG体验之后,这类似的问题我算是摸清了
要尽量给这个主题多一些API
像这个lightsys

struct LightSys{
	p: PointLight,
	s: SpotLight
}
impl LightSys {
pub fn setPointLight(&mut self, radius? density? color?...)
pub fn setSpotLight(&mut self, radius? density? color?...)

这样就在外面直接light_sys.setXXXX setYYYY setZZZZ就避免了把这个light_sys传来传去
这个例子可能不太合理,但是主要就是记一下这个事情,理解这个问题,尽量避开传来传去,就能避免多次mut borrow~

相关文章:

  • GitHub-使用 Git工具 创建密钥id_rsa.pub
  • Redis 主从复制,哨兵,集群——(2)哨兵篇
  • 如何在Android项目中制作和使用三方包(jar文件)
  • Kylin麒麟操作系统(基于Linux)下的环境变量配置,重启生效
  • 【网络协议】聊聊拓扑网络结构与原理
  • 华为OD机考B卷 | 100分】阿里巴巴找黄金宝箱(JAVA题解——也许是全网最详)
  • el-tree 获取过滤后的树结构
  • 微信小程序 onLoad(option) 方法
  • CSS3 网格布局
  • laravel框架的优缺点是什么?
  • CISA 彻底改变了恶意软件信息共享:网络安全的突破
  • Linux考试复习整理
  • linux系统编程之三
  • django系列之事务操作
  • Kali Linux 安装搭建 hadoop 平台 详细教程
  • 求职半年,十月成功拿到比亚迪offer,分享一波面经....
  • Mac 使用 scp 上传或下载文件/文件夹
  • Modbus网关实现设备之间的相互通信和数据共享
  • 代码与细节(一)
  • 广东广西大量工地建筑支模
  • 印巴局势紧张或爆发军事冲突,印度空军能“一雪前耻”吗?
  • “80后”商洛市委副书记、市政府党组副书记赵孝任商洛市副市长
  • 澎湃回声丨23岁小伙“被精神病”8年续:今日将被移出“重精”管理系统
  • 屠呦呦当选美国科学院外籍院士
  • 人社部:一季度全国城镇新增就业308万人,同比增加5万人
  • 杭州打造商业航天全产业链,请看《浪尖周报》第22期