borrow-checker 相关问题

借用检查器是指Rust编程语言使用的所有权概念的编译时分析。此标记应用于相关问题和错误。

迭代遍历过滤器和继续条件的当量

为了使我的代码更清晰易懂,我将几个数据结构提取到一个单独的结构中:struct S {x:Vec ,y:HashSet ,z:Vec ,}仅存在...

回答 1 投票 0

从不可变数组获取可变引用

我不知道标题是否正确,但这是问题所在:让mut行:Vec > = vec![];让row1 =&mut ** rows.get(0).unwrap();我想存储可变的...

回答 1 投票 -1

为什么将函数移至默认特征方法会导致借入错误?

给出包含元素集合的struct Foo:#[derive(Debug)] struct Foo {bar:Vec ,}我编写了一个可变的视图对象,旨在封装Foo的一部分:#[...] >

回答 2 投票 1

为类型实参表示确切的生存期(较高约束)

在Rust中,T:'据我所知,意思是“任何提供的类型参数T的所有生存期都必须长于'a”。 pub struct A {字段:&'a T}这是您自然会得到的...

回答 1 投票 3

基于同一Hashmap中的另一个值插入HashMap

我正在尝试基于同一HashMap中的另一个值将值插入HashMap中,如下所示:使用std :: collections :: HashMap; fn main(){let mut some_map = HashMap :: new(); some_map.insert(...

回答 1 投票 0

HashMap Entry API的生命周期/借款问题[重复]

我不知道如何使以下代码成功编译。第一步是努力克服生命周期注释,但是,我认为它终于解决了。下一步是...

回答 1 投票 0

生锈的链表不能借用上一个和下一个可变元素(只需要不可变的引用)

目前,我正在研究一个小应用程序来模拟(多链)摆。为了保存它们,我决定使用std :: collections :: LinkedList。显示并静态移动它们是...

回答 1 投票 -1

铁锈性状寿命

我认为这很明显我很想念,但是这里有..使用std :: io; pub trait来源{fn push(&self,t:T)-> io :: Result; fn link(&mut self,sink:...

回答 1 投票 0

Rust:多次借用结构实例失败,即使使用了范围,也失败

我正在尝试创建一个结构,该结构包含一个哈希图和一个向量,因此向量应包含对哈希图值的引用。我以为在同一...上有多个可变借项...

回答 1 投票 1

Rust:将值移出选项并压入堆栈

我有一个Option类型的值。如果类型内有一个Leg值,我想修改Leg结构,然后通过将其从当前存储在self中的腿移到该位置来将其标记为“完成”。]]]

回答 1 投票 0

我如何返回对RefCell >>的内部数据的引用? [重复]

T> {数据:RefCell >,生成器:RefCell >,} impl [> < [ 找到了解决方法here!我可以使用Ref::map来获取内部数据: pub fn get(&self) -> Ref<T> { self.init(); Ref::map(self.data.borrow(), |borrow| { borrow.as_ref().unwrap() }) } 此方法现在返回Ref而不是&T,但我认为应该没问题。

回答 1 投票 0


在Rust中存储包含闭包的结构的向量

在我的Rust应用程序中,我想存储一个包含闭包的结构的Vector,这些闭包随后将被调用。到目前为止,我有这样的东西(对于俄罗斯方块游戏):pub struct TimestepTimer {pub ...

回答 1 投票 0

Rust中的多个参考读者和一个参考作家

我目前正在开发一个小型Rust游戏,以从该语言开始,基本上具有以下代码(我在这里只写了一个最小的示例):struct Player {pub ship:&'a Ship&...

回答 1 投票 1

如果忽略返回值的生存期,为什么会得到双重可变借入?

我想通过这种设计实现OS模拟器:包含进程列表的OS结构每个进程都有一个优先级,并且是一个闭包,要接收OS本身作为参数来运行OS ...

回答 1 投票 0

如何初始化数组并保存对其项的引用?

let mut u:[usize; 3] = [0; 3];让mut v = vec![];因为i在0..3 {u [i] = i;令e =&(u [i]); v.push(e); }错误[E0506]:由于借用了它而无法分配给u [_],-> src / lib ....

回答 2 投票 2

函数自变量中的可变借位

为什么以下代码无法编译(操场):使用std :: collections :: HashMap; fn main(){let mut h:HashMap = HashMap :: new(); h.insert(0,0); h.insert(1,h.remove(&...

回答 1 投票 1

从格式化输入生成树

我一直想出一个解决方案来从格式化的输入中读取二叉树并在Rust中构建该树。借方检查员一直在疯狂,因此决定...

回答 1 投票 0

折叠字符串以在rust中构建hashmap char计数器,但给出两阶段借用错误

我正在尝试构建一个哈希图,该哈希图计算字符串中的字符频率。我的方法是将字符串中的字符折叠起来,在每个......>

回答 1 投票 0

使用在Rust [duplicate]中的结构上实现的函数的移动值

我有一个带方法的播放器结构。我创建了一个新播放器,并尝试调用该方法:#[derive(Debug,Default,Clone)] pub struct Player(pub Vec ,i32,String); impl Player {/ ...

回答 1 投票 -1

© www.soinside.com 2019 - 2024. All rights reserved.