lifetime 相关问题

变量的生命周期是变量绑定到特定内存位置的时间。生命时间在分配变量时开始,在解除分配时结束。

使用带有生命周期说明符的函数时,借用的值寿命不够长

我对 Rust 的生命周期相当陌生。这是我写的代码: pub fn from_reader<'de, T, R>(读者:&'de mut R)->结果 在哪里 T:反序列化<'de>, R:回复...

回答 1 投票 0

为什么要返回Rust中存在的&str编译成功的Self

我下面的代码 特征随机{ fn 生成()-> 自身; } impl 随机 for &str { // 这样就编译成功了 fn 生成() - > 自我 { “富” } /...

回答 1 投票 0

为什么 Rust 认为拥有闭包存在于“静态生命周期”?

我正在考虑将拥有一些线程安全值的闭包传递给生成的线程的可能性。然后,线程将能够调用只知道签名的东西,而

回答 1 投票 0

如何将可变闭包分配给静态 mut 变量

我有一个静态变量,用于存储某些系统事件的回调: static mut CALLBACK: Option> = None; 我的目标是能够将我的闭包分配给这个回调(通过...

回答 1 投票 0

延长线程变量的生命周期

我正在从文件中读取一个字符串,将其按行分割成一个向量,然后我想在单独的线程中对提取的行进行一些操作。像这样: 使用 std::fs::File; 使用 std::io::prelu...

回答 1 投票 0

如何为具有泛型类型的结构派生反序列化?

#[导出(反序列化)] 结构体S<'d, T> 其中 T:反序列化<'d> { 脚, 其他字段:字符串 } 上面的代码无法编译,抱怨未使用生命周期参数, 但如果我...

回答 1 投票 0

C++ 销毁一个对象并在同一个变量中构造一个新对象是否有效?

我有一个包含某种类型 T 的对象的结构,我知道它有一个 noexcept 默认构造函数。 我想在我的结构上公开一个成员函数,用 ...

回答 1 投票 0

当我们让一个特质继承“static”时,这意味着什么?

Rust 支持特征继承,如下: 酒馆特征 A {} 酒吧特质 B: A {} B:A意味着如果某个类型T实现了B,那么它也需要实现A中的所有方法。 但今天我看到了以下...

回答 3 投票 0

使用结构体中的哈希集引用返回对哈希集条目的引用

我目前正在用 Rust 编写一个解析器,我需要能够实习字符串文字和变量标识符。解析器应该借用一个 HashSet 来添加值,并返回带有

回答 1 投票 0

在 C++20 中模拟 std::start_lifetime_as_array

根据cppreference,目前没有编译器支持std::start_lifetime_as_array。 然而,SO 答案表明它可以在 C++20 中“模拟”,如下所示: 模板

回答 1 投票 0

Rust 中引用的生命周期,特别是在使用解引用时

fn life_test<'a>(s: &'a 字符串, t: &'a 字符串) -> &'a 字符串 { s } fn 主() { // 让一个; 让 mut a = String::from("hello1"); 设 b = &mut a; ...

回答 1 投票 0

通用 HKT 与生命周期有界限

在为动态类型 DSL 创建解释器时,由于需要对所有参数进行类型检查,编写内置函数很快就会变得乏味。为了解决这个问题,我创建了一个特征,它可以...

回答 1 投票 0

如何指定将作为闭包参数的关联类型的生命周期?

我有一个函数的特征,这个函数接受一个闭包作为参数,并且该闭包接受一个参数,该参数需要是实现 Read 特征的某种类型: 特征可以读取{ 类型

回答 3 投票 0

为什么我不能移动由特征表示的闭包?

我正在尝试实现一些解析组合器。每个解析器组合器都是一个可变的闭包,但外部代码将每个组合器称为为 calli 提供全面实现的特征...

回答 1 投票 0

Rust 中自我的生命周期

我有一个这样的结构: 结构体 Foo { big_stuff:大东西, 内部引用:&'???酒吧, } 我的意图是,inner_ref 将指向 big_stuff 中的某个位置,因此,inner_ref 的生命周期

回答 1 投票 0

向特征的生命周期参数提供结构本身的生命周期?

我有以下 Rust 代码。 特征 X<'a> { fn x(&self) -> &'a [f64]; } 结构拥有{ x:Vec, } 结构参考<'a> { x: &'a[f64], } 我愿意

回答 1 投票 0

尝试将向量块与 Tokio spawn 函数一起用于多线程时出现生命周期错误

所以,我有这段代码在单线程中运行良好 pub 异步 fn insert_foos( 自己, foos:Vec, ) -> 结果<(), Box> { 让春...

回答 1 投票 0

代码在单线程中运行良好,但与 tokio 一起使用时出现终身错误

所以,我有这段代码在单线程中运行良好 pub 异步 fn insert_foos( 自己, foos:Vec, ) -> 结果<(), Box> { 让春...

回答 1 投票 0

`pub fn long(&self) -> impl Future<Output = ()> + 'static` 是否会在每个创建的 future 中泄漏数据?

基本上,基于这个答案: pub fn long() -> impl Future + 'static { let s = String::from("答案是什么?"); 异步移动{ // `s` 被移入...

回答 1 投票 0

为回调创建 Arc 克隆:`xxx` 活得不够长

作为 Rust 的新手,我一直在阅读有关生命周期的内容,并且慢慢地了解它们,以及使用 Arc 和 Mutex 共享数据。我认为我这样做的方式是正确的

回答 1 投票 0

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