Rust **node.borrow()做什么? ///遍历节点网络并返回输入节点 fn获取\u输入节点:Rc->Rc{ 匹配**节点。借用{//此处 Node::Input{..}=>Rc::clone&Node, _ => { ... }, } }

Rust **node.borrow()做什么? ///遍历节点网络并返回输入节点 fn获取\u输入节点:Rc->Rc{ 匹配**节点。借用{//此处 Node::Input{..}=>Rc::clone&Node, _ => { ... }, } },rust,Rust,我不明白为什么会提出这个编辑,为什么它会起作用。我认为最令人困惑的是有时会发生的隐含的去引用 例如,.borrow是RefCell的一个方法,但我可以直接在Rc上调用它。此外,这也适用于:**node.borrow。让node=***node.borrow相当于: 设node=*node;//Rc实现了Deref,节点现在是RefCell 让node=node.borrow;//一个RefCell方法,node is now RefIt看起来您的问题可能由;;的答案来回答。如果没有,请回答您的问

我不明白为什么会提出这个编辑,为什么它会起作用。我认为最令人困惑的是有时会发生的隐含的去引用

例如,.borrow是RefCell的一个方法,但我可以直接在Rc上调用它。此外,这也适用于:**node.borrow。

让node=***node.borrow相当于:

设node=*node;//Rc实现了Deref,节点现在是RefCell
让node=node.borrow;//一个RefCell方法,node is now RefIt看起来您的问题可能由;;的答案来回答。如果没有,请回答您的问题以解释差异。否则,我们可以将此问题标记为已回答。@Shepmaster我的问题更多地是关于这个特定示例的,但现在我已经解决了,请参见我的答案