borrow-checker 相关问题

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

将父结构传递给Python函数并调用可变父成员时如何避免“PyBorrowMutError”

相关:如何修改传递给python的rust类型,这些类型最初是从Pyo3在python中创建的 我创建了以下目录结构 - Python * 主.py - 源代码 * 库.rs * 货物.toml *

回答 1 投票 0

为什么从引用切换到 RefCell 会导致借用检查器失败?

Rust (1.78.0) 成功编译以下代码: struct Foo<'a>(&'a mut usize); impl<'a> Foo<'a> { pub fn func(&self, _s: &'a mut String) -> &'a str ...

回答 1 投票 0

如何从 RefCell 返回具有生命周期的引用?

例如,我有以下结构: 结构体 MyStruct { 项目:RefCell>, } 实现 MyStruct { fn new() -> 自身 { 自己 { 项目: 重新...

回答 1 投票 0

我可以用借来的元素来改变向量吗?

我正在尝试存储对可变向量元素的引用以供稍后使用。但是,一旦我改变了向量,我就无法再使用存储的引用。我明白这是因为

回答 3 投票 0

两个可变借用向量

我正在学习用 Rust 编写的突破游戏教程,我有简单的数据结构表示屏幕上的球: 酒吧结构球 { 矩形:矩形, 速度:Vec2, } 它存储在 vec...

回答 3 投票 0

Vec 上的迭代器<Vec<i32>>:闭包可能比当前函数寿命更长,但它借用了

我正在编写一个函数来处理Vec>: fn process_grid(网格: Vec>) -> Vec { grid.iter() 。枚举() .flat_map(|(i, 行)...

回答 1 投票 0

为什么输出生命周期没有被省略为单个显式生命周期?

Rust 书籍提供了以下代码来说明需要显式生命周期的有效函数定义: fn 最长<'a>(x: &'a str, y: &'a str) -> &'a str { ...

回答 1 投票 0

具有生命周期和多个引用的 Rust 程序的糟糕设计

我对 Rust 语言非常陌生,所以请耐心等待。 我正在 Rust 中实现一个图形数据结构。对于图中的每个节点(还有边 - 从这个片段中省略),我有一个结构......

回答 1 投票 0

使用`RefCell<T>`时出现奇怪的编译时借用错误

我正在使用ratatui库来使用rustc 1.77.2制作一个程序。 我有以下代码: self.terminal().draw(|frame| self.render_frame(frame))?; 其中terminal()是结构体的getter

回答 1 投票 0

第二生命周期省略规则

Rust 书籍提供了以下代码来说明需要显式生命周期的有效函数定义: fn 最长<'a>(x: &'a str, y: &'a str) -> &'a str { ...

回答 1 投票 0

为什么这个不可变的引用字段持有可变的借用

使用以下代码,我对借用投诉感到惊讶 #[导出(调试)] 结构外部结构{ 一些东西:i32, } 实现外部结构{ fn non_mutable_read(&self) { p...

回答 1 投票 0

为什么这个可变借用超出了它的范围?

在我期望可变借用结束之后,我遇到了关于同时使用可变借用和不可变借用的令人困惑的错误。我对类似问题做了很多研究(1、2...

回答 2 投票 0

如何在匹配语句中初始化两个变量而不激怒借用检查器?

所以我有这个使用 rusqlite 的代码。而且效果很好。 pub 结构数据库 { conn:连接, } 实现数据库{ pub fn get(self: &Self, id: Option, name: Option<&am...

回答 1 投票 0

理解 Rust 在向量循环时的借用/引用

我正在努力寻找解决 Rust 中以下问题的方法。我希望能够循环一个(可变)向量,并且仍然能够循环嵌套在外部向量中的同一向量。 圣...

回答 1 投票 0

返回拥有的价值和参考价值

我有一个 Rust 函数,它有固定的输入类型,但我可以选择返回类型: fn foo(数据: &[u8]) 该函数需要对该切片进行更改,因此我创建了一个拥有的值,因此...

回答 1 投票 0

不能借用*self作为不可变的,但我找不到解决方法

所以我在第 17 行出现了上述错误,我明白,但没有找到好的解决方法: 结构节点{ node_type:节点类型 } 枚举节点类型{ 内部([盒子; 16]), 叶(Vec<...

回答 1 投票 0

Rust - 返回拥有的价值和对价值的引用

我有一个 Rust 函数,它有固定的输入类型,但我可以选择返回类型: fn foo(数据: &[u8]) 该函数需要对该切片进行更改,因此我创建了一个拥有的值,因此...

回答 1 投票 0

当已知可变值不可变时,借用一些可变值两次

我有一个类似于以下内容的构造,其中 Analysis 结构负责分析文件,Project 结构负责管理充当

回答 1 投票 0

为什么我的函数不删除借用的不可变引用?

我是 Rust 新手。我正在从官方 rust-lang 网站上的“The Rust 编程语言”一书中学习 Rust。在“切片类型”部分中有一个代码可以从字符串中查找第一个单词...

回答 1 投票 0

如何要求闭包在其范围结束时归还借用?

考虑以下函数体: fn update_acc(&mut self, acc_rub: &Vector3, _t: u64) -> () { 让 acc = Self::rub_to_frd(acc_rub); 如果 acc.norm() ...

回答 1 投票 0

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