首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RefCell本身是否有用?

RefCell本身是否有用?
EN

Stack Overflow用户
提问于 2022-11-01 22:13:35
回答 1查看 60关注 0票数 -1

这似乎是一个奇怪的问题,但锈蚀中的“内部易变性”单元格总是在与某种共享指针一起使用的上下文中解释和使用。事实上,它本身似乎是非常无用的,因为你得到的内部变化,没有办法分享它。

所以我的问题是:它有用吗?如果它不是(而且从未使用过),那么不提供同样是共享指针的RefCell又有什么意义呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-01 22:51:27

RefCell并不总是直接在Rc中。例如,这种结构可能非常有用:

代码语言:javascript
复制
use std::cell::RefCell;

struct SharedVec<T> {
    inner: RefCell<Vec<T>>,
}

impl<T> SharedVec<T> {
    fn push(&self, value: T) {
        self.inner.borrow_mut().push(value);
    }
    fn pop(&self) -> Option<T> {
        self.inner.borrow_mut().pop()
    }
}

然后,您可能有一个Rc<SharedVec<T>>

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74282360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档