腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
在
Rust
中
,
我
应该
尽量
避免
使用
Rc
和
RefCell
吗
?
rust
Rust
在编译时提供借用检查。但是如果
使用
Rc
和
RefCell
,检查将在运行时延迟,并且当程序违反规则时将抛出异常。就像这样: use std::
rc
::
Rc
; let mut(reference.clone()); fn func3(refere
浏览 85
提问于2020-12-17
得票数 1
回答已采纳
1
回答
在
Rc
<
RefCell
<T>>
和
锈病之间来回传递C++
rust
根据我这个问题的答案:
我
可以将在Box中分配给
Rust
的东西传回给C,然后作为对&T的引用再次收到它,因为
Rust
分配Sized结构尊重can。
我
想做同样的事情,但现在为
Rc
<
RefCell
<T>>。
我
应该
把Box还给
Rc
<
RefCell
<T>>
吗
?
我
猜没有,因为
Rc
没有实现Sized,这是Box<T&
浏览 0
提问于2020-06-19
得票数 3
回答已采纳
1
回答
锈蚀
中
的双链表
linked-list
、
rust
我
刚刚开始学习
Rust
,为了尝试获得引用、所有权
和
可更改性的诀窍,
我
尝试了一个双链接列表。它现在编译了,add函数似乎按预期工作。(使add()保持列表有序,
使用
泛型,实现Iterator,等等)。use std::
rc
::{
Rc
, Weak};struct Node { value: i32,next:
RefCell
<Option&
浏览 0
提问于2018-09-22
得票数 4
回答已采纳
1
回答
引用锈蚀
中
包含的结构(并在其上调用方法)
rust
、
cyclic-reference
、
rust-obsolete
编者注:此代码示例来自1.0之前的
Rust
版本,
在
语法上不是有效的
RUST
1.0代码。此代码的更新版本会产生不同的错误,但答案仍然包含有价值的信息。
我
试图
在
Rust
中
编写一个容器结构,其中的元素还存储对包含容器的引用,以便它们可以调用该容器上的方法。据我所知,
我
需要通过
Rc
<
RefCell
<T>>来完成这个任务。这是正确的
吗
?访问
Rc
<
RefC
浏览 1
提问于2014-01-27
得票数 6
1
回答
避免
在
规范系统
中
克隆引用
game
、
rust
我
正在
使用
Amethyst的规格板条箱开发一个纸牌游戏,并且对
Rust
相当陌生(因此
我
正在通过与编译器的斗争来学习)。
我
的第一个System是向每个玩家发送卡片。
我
有:一个Cards组件,表示玩家或甲板所承载的一组Card deck: Entity,<e
浏览 0
提问于2021-08-02
得票数 0
1
回答
将Ref返回到
Rc
<
RefCell
<>>
中
的某些内容,而不带Ref::map
rust
、
ownership
、
borrowing
、
refcell
工作守则:use std::
rc
::
Rc
; value: i32 Ref::map( (**wrapped).borrow(),("Our value: {}", *
浏览 4
提问于2020-11-19
得票数 2
回答已采纳
2
回答
如何创建具有内部引用的结构?
rust
我
试图用邻接表绘制一个图,但是
我
不知道如何为邻接表
中
的引用指定一个合适的生命周期。
我
想说的是: nodes : Vec<T>,}在我看来,这
应该
是安全的,因为节点归对象所
浏览 2
提问于2014-11-19
得票数 3
1
回答
Rust
所有权智能指针
rust
我
最近开始学习
Rust
,并且刚刚了解了智能指针(Box、
Rc
和
RefCell
)。
我
错了吗?如果是:为什么允许
Rust</em
浏览 1
提问于2020-09-06
得票数 4
1
回答
如何解决“返回引用当前函数拥有的数据的值”(结构之间的实际脱扣器)
rust
、
borrow-checker
、
ownership
、
object-lifetime
我
正在学习
Rust
(
我
是一个C++开发人员),
我
仍然习惯于借用检查器。
我
有下面的示例(也是
在
godbolt:上): value: i32, foo: &'a mut Foo, bar, } let _parent = Parent::new()
浏览 8
提问于2022-04-03
得票数 2
回答已采纳
2
回答
如何读取
和
修改链接树
中
节点的值?
rust
、
tree
、
reference-counting
、
borrowing
、
interior-mutability
我
正在为
Rust
中
的树结构的实现而苦苦挣扎。特别是获取
和
修改节点的值。
使用
值的惯用方式是什么?use std::cell::
RefCell
; pub struct TreeNode { pub
浏览 29
提问于2020-05-08
得票数 0
回答已采纳
2
回答
使用
简单结构共享的多个引用的惯用方法
rust
、
mutable
、
borrow-checker
我
希望有一组函数在给定的结构上运行。两个CPU需要访问一个可变内存。据我所读,
我
需要
Rc
<
RefCell
<_>>。这类似于表示树的问题,但它更简单,因为
我
的结构在编译时定义了关系,不需要是泛型的。来自OOP背景,
我
发现这是相当有问题的: 虽然memory字段存在于Cpu结构
中
,但每次需要在impl
中
访问它时,
我
都必须在其上应用borrow_mut()。这是因为
Rust
想让
我
<
浏览 1
提问于2021-07-14
得票数 2
回答已采纳
1
回答
在
Rc
包装对象
中
调用可变方法的标准方法是什么?
rust
在下面的代码
中
,
我
试图通过调用一个refcounted对象的方法来更改它的值: let mut x =
Rc
::new(Thing {} pub fn change_num(&mut self, newnum: u32) { }
我
正在
使用
if let Some(val) =
Rc</e
浏览 0
提问于2018-10-25
得票数 13
回答已采纳
1
回答
解释*
Rc
::make_mut的行为以及与互斥体不同的原因
rust
我
需要在几个函数之间传递一个资源,这些函数
使用
闭包作为参数。在这些数据
中
,数据得到了处理,但它希望变量实现的更改将反映在其他变量
中
。 注意:
我
使用
Re
浏览 0
提问于2017-05-16
得票数 3
回答已采纳
1
回答
为什么
我
可以
在
Rc
中
使用
动态调度,而不能
使用
RefCell
?
rust
我
使用
Rc
对实现一个特性的对象进行动态调度。然后,
我
需要内部可变,所以我改为了
RefCell
。
我
认为
RefCell
只是一个内部可变的
Rc
,但它不会接受
我
的特性对象。use std::cell::
RefCell
; fn main() {//
浏览 2
提问于2020-10-01
得票数 1
回答已采纳
1
回答
用
Rc
理解锈蚀
中
的内存泄漏
memory
、
memory-leaks
、
rust
Option<
Rc
<
RefCell
<Person>>>,} fn("luke {}",
Rc
::strong_count(&luke));当代码运行时,来自drop实现的消息不会被打印出来,因为这段代码
应该
会泄漏内存。当代码完成时,卢克
和<
浏览 0
提问于2020-04-13
得票数 1
回答已采纳
1
回答
如何
使用
Rc
创建多态树/图?
rust
、
tree
、
polymorphism
我
在
C++中有一个多态的、引用计数的树结构: struct Node {}; 树的每个节点可能有自己的数据
和
自己的实现
我
在
Rust
中
尝试了以下方法: use
rc
::{
Rc
,
RefCell
}; children: Vec<
Rc
<<
浏览 22
提问于2021-06-28
得票数 0
2
回答
存储对self的引用
rust
、
weak-references
我
试图
在
Rust
中
创建一个节点网络,在这里,
我
希望网络
中
的每个节点都知道其他每个连接的节点。
我
认为这可以用弱的
Rc
来完成,就像这样:use std::cell::
RefCell
;use std::
rc
::Weak;::downgrade(&
Rc
::new(*self)));
浏览 1
提问于2018-06-04
得票数 1
2
回答
存储其他人拥有的可变引用
rust
、
borrow-checker
我
想要将结构存储
在
HashMap
中
,但也要在另一个struct向量字段
中
引用相同的结构。} 当我反复讨论
我
和
DB的关系时,
我
浏览 12
提问于2022-11-03
得票数 0
回答已采纳
2
回答
如何在锈蚀
中
的结构中
使用
循环依赖关系?
rust
我
有两个相互依赖的结构。
在
C++
中
,我会用指针来做这件事,
我
试图找出如何用
Rust
来做这件事。到目前为止,
我
尝试过
使用
Box
和
Rc
,
我
认为因为
Rc
是一个参考计数器,它
应该
能够处理这个问题,但是它给了我一个错误。下面是一个简单的代码示例: b :
Rc
<B> a : Option<<
浏览 7
提问于2022-11-16
得票数 1
1
回答
我
需要推一个包含struct的成员的(Vec),他也是一个struct
rust
我
正在尝试添加一个本身就是一个结构的结构的成员。
我
有一个经典的错误“无法移出借来的内容”。提前谢谢。use std::cell::
RefCell
; pub x: f32,} pubSprite::new(1.0, 1.0), } pub human: Human, sprites: Vec
浏览 0
提问于2019-06-30
得票数 1
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
30天拿下Rust之智能指针
【大家的项目】Rbatis-制作 Rust 语言堪比 Mybatis 的异步 ORM 框架
微软首席工程师Nick Cameron:Rust要想取得更大的成功,需要解决这十大挑战
连续 3 年最受欢迎:Rust,香!
【密码学】一文读懂RC4加密算法
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券