lifetime 相关问题

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

Rust 生命周期如何与 &str 交互? [重复]

我刚刚开始学习 Rust,我尝试输入以下函数。 fn 最长<'a>(a: &'a str, b: &'a str) -> &'a str{ 如果 a.len() > b.len() { A }

回答 1 投票 0

rust 生命周期错误:生命周期可能不够长

pub struct Writer<'a> { 目标:&'a mut 字符串, } impl<'a> 作家<'a> { fn indent<'b>(&'b mut self) -> &'a String { 自我目标 } } 比较...

回答 1 投票 0

如何告诉 rustc 返回值的寿命足够长?

一段代码: 使用 std::mem::* ; 特质子{ fn do_something(&mut self, 值: u32); } 特质父母<'a> { 类型删除; // 将子级添加到父级,类似 RAII 的模式 ...

回答 1 投票 0

如何为观察者设计模型保持(自捕获)闭包

我试图将多个回调作为闭包保存,但我在它们的生命周期中遇到了麻烦: pub 类型 WriteCallback = Box u8>; pub 结构地址总线 {

回答 1 投票 0

字符串似乎在函数返回后被释放

我目前正在尝试创建一个简单的函数来读取文件的内容并将其存储到 std::string 或 char 数组中。我遇到了数据读取完全正常的问题...

回答 1 投票 0

Rust 中线程闭包的静态生命周期

使用std::thread; fn 主() { // 静态数字:[i32;3] = [1,2,3]; 让数字 = vec![1,2,3]; 线程::范围(|s| { s.spawn(移动||{ 对于 n in &numbers { ...

回答 1 投票 0

存储函数地址的地址?

这个程序有未定义的行为吗? 结构体存储{ 无效存储(无效(*&&fp)()){ fpp = &fp; } void call() const { (*fpp)(); } 无效(**fpp)(); }; 无效 f(...

回答 1 投票 0

迭代器的生命周期混乱

我是 Rust 新手,目前一直在关注使用太多链表学习 Rust 示例。在 IterMut 部分之前,一切对我来说都是有意义的。然而,当实现 IterMut(在

回答 2 投票 0

如何将一个不透明的值像烫手山芋一样从一个 Enum 构造函数移动到下一个枚举构造函数?

我想将以下填充类型制作为迭代器转换器: 枚举步骤 { 之前(T), 期间(T), 后 } 结构填充 { 步骤: 步骤 } (注意...

回答 1 投票 0

为什么我不能返回从字符串生成的 &str 值?

我在试图理解为什么我无法返回从字符串生成的 &str 值时遇到了一些麻烦(天哪,as_str 什么时候准备好?)而且我做错了一些事情。我得到这个想法是因为没有...

回答 2 投票 0

捕获 FnMut 闭包的寿命不够长

问题 简而言之:我正在尝试实现一个包含闭包回调的结构,该闭包可变地捕获状态。想法是用户提供回调(关闭),并且可以稍后通知...

回答 1 投票 0

悬空字符串的 C++ 生命周期

在C中,你可以写 const char *结果 = "AB"; C++ 标准支持这种风格吗?这个常量字符串的生命周期是否与指针的相同作用域一起得到保证?

回答 5 投票 0

从函数到定义为可变引用的变量的赋值?

我正在尝试实现 ode_solvers 箱来整合我的方程组。为此,我有一个函数来计算 dydx 是什么,然后我在

回答 1 投票 0

返回特征的生命周期不存在于 tokio_postgres 行并且“寿命不够长”

我正在寻求了解如何解决 Rust 中的终身问题。 SO、ofc 上有很多类似的问题,但没有一个看起来完全相同——所有其他的似乎都是关于 str...

回答 2 投票 0

当临时借用闭包拥有的数据时,Rust“借用的数据逃逸到闭包之外”

这是问题的游乐场。这里的代码以一种非常迂回的方式做一些事情,但它是问题的最小重现,仍然有点类似于我的实际程序——我知道......

回答 1 投票 0

哪个先发生,存储重复使用还是新放置的生命周期结束?

该标准通过以下示例来演示指针在其指向的对象的生命周期结束后只能以有限的方式使用。然而,这是否意味着第一个对象...

回答 1 投票 0

如何将闭包泛型参数的生命周期与闭包本身的生命周期解耦?

我正在开发一个 Rust 项目,我希望存储一个盒装闭包的 Vec 以及一个稍后重用的通用参数。 我想修改每个存储的闭包以添加一些通用过程...

回答 1 投票 0


std::start_lifetime_as()的实现

在 C++20 中接受 P0593R6(“为低级对象操作隐式创建对象”)后,C++23 将获得 std::start_lifetime_as() ,它“完成了[P0593..中提出的功能”。 .

回答 2 投票 0

从特征方法返回特征对象时无法推断适当的生命周期

我正在尝试制作类似不可变字典特征的东西,可以在不影响以前版本的情况下添加新项目(引用)并使用它。最小的例子: #[派生(克隆)] 酒吧街...

回答 1 投票 0

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