7得票2回答
在循环中,借用值的生命周期不够长

我正在尝试解析一个文件,并从函数返回Vec<Vec<&str>>。但是在文件读取循环中将内容push到向量时,出现了借用值错误。 use std::io::{self, BufReader, prelude::*}; use std::fs::File; f...

14得票1回答
如何为具有生命周期成员的结构派生serde :: Deserialize?

如何为包含具有不同或相等生命周期的对象的结构体派生Deserialize? 示例代码#[derive(Default, Debug, serde::Deserialize, serde::Serialize)] struct B<'a> { b: &'a str,...

8得票1回答
嵌套的lambda表达式中变量未能存活导致借用检查错误

我在嵌套的lambda中遇到了一个错误。 let rows = vec![ vec![3, 6, 2, 8, 9, 0], vec![0, 0, 1, 4, 5, 1], ]; let pair_sums = rows.iter() .flat_map(|row| ...

12得票1回答
哪个联合成员在placement new之后变为活动状态?

关于这段代码: #include <string> int main() { union u { u() { i = 0; } ~u() {} int i; std::string s1; ...

10得票1回答
Rust生命周期错误:预期具体生命周期,但找到绑定的生命周期

我在处理结构体的生命周期参数时遇到了问题。我不确定如何准确地描述这个问题,但是我创建了一个简单的示例来展示我的编译时错误。struct Ref; struct Container<'a> { r : &'a Ref } struct ContainerB<'a...

8得票1回答
为什么在参数类型中使用"Self"会引发生命周期错误?

我目前在跟随https://raytracing.github.io/books/RayTracingInOneWeekend.html,但我正在使用Rust实现所有内容。以下是我的向量实现的一部分: type Scalar = f64; #[derive(Debug, Default, ...

8得票1回答
由于冲突的要求,无法推断出与“ref mut”模式相应的适当生命周期。

struct RefWrap<'a> { wrap: &'a mut Option<String>, } impl<'a> RefWrap<'a> { fn unwrap(&mut self) -> &am...

130得票5回答
有没有办法返回在函数中创建的变量的引用?

我想编写一个程序,它将以两个步骤编写文件。在运行程序之前,该文件可能不存在。文件名是固定的。 问题在于 OpenOptions.new().write() 可能会失败。在这种情况下,我想调用自定义函数 trycreate()。这个想法是创建文件而不是打开它并返回一个句柄。由于文件名是固定的,...

7得票1回答
类型别名缺少生命周期指定符[E0106]

这段代码: use std::fmt; use std::result::Result::{self, Ok, Err}; #[derive(Clone)] #[derive(Copy)] enum Tile { White, Black, Empty } type...

8得票3回答
Rust中涉及trait对象寿命的混乱错误

有人能告诉我以下代码的问题在哪里吗?编译器报错关于生命周期的问题,但错误信息完全没有意义。我已经尝试了我能想到的所有方法,但似乎没有什么帮助。 use std::borrow::BorrowMut; trait Trait<'a> { fn accept(&mu...