如何在不整体借用struct的情况下实现struct字段的封装

问题描述

我的问题已经有点discussed here

问题是我想访问结构的多个不同字段以使用它们,但我不想直接处理这些字段。相反,我想封装对它们的访问,以获得更大的灵活性。

我试图通过为此结构编写方法来实现这一点,但是正如您在上面提到的问题或 my older question here 中看到的那样,这种方法在 Rust 中失败了,因为借用检查器只允许您借用一个如果您直接这样做,或者如果您使用一种将它们借用在一起的方法,那么 struct ,因为所有借用检查器从其签名中知道的是 self 是借用的,并且只有一个self 的可变引用可以存在于任何位置时间。

失去同时借用结构的不同部分作为可变部分的灵活性当然是不可接受的。因此我想知道在 Rust 中是否有任何惯用的方法来做到这一点。

我天真的方法是编写宏而不是函数,执行(并封装)相同的功能

编辑: 因为 Frxstrem 建议我在顶部链接的问题可以回答我的问题,所以我想说清楚,我不是在寻找某种方法解决这个问题。我的问题是建议的解决方案(如果有的话)中的哪一个是正确的方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)