lifetime 相关问题

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

在 Rust 中使用“静态生命周期”声明 Vec 失败

我正在学习 Rust(具有 C++ 背景),并努力声明具有静态生命周期的向量。 基本上,我尝试过... 让 v : '静态 Vec = vec![1, 2, 3]; ...但获得终生

回答 1 投票 0

根据C++标准,这种对临时的访问是否安全?

我最近在 C++ 代码库中发现了以下代码模式,我现在想知道根据 C++ 标准它是否安全。 (真正的代码通过几个有趣的方式传递了const char*指针...

回答 1 投票 0

Rust 如何在不使用函数的情况下检测对局部变量的引用?

假设函数返回对局部变量的悬空引用: fn foo<'a>() -> &'a i32 { 让我= 2; &我 } fn 主() { } Rust 注意到了这一点并引发了一个错误。 我的问题...

回答 1 投票 0

通过 const 指针而不是 const 引用传递临时值;这个解决方法格式正确吗?

所以显然,根据 C++ 标准,不能将 const 指针传递给临时变量作为函数的参数,而传递 const 引用则完全没问题,尽管两者都可以

回答 1 投票 0

为什么类似 Deref 的特征不能组合?

在此代码中,MyDeref 与标准库中 Deref 的定义匹配,MemoryView(从更复杂的示例简化而来)也几乎如此。 酒吧特质 MyDeref { 输入目标:?S...

回答 1 投票 0

上一次迭代中的可变借用,或者可能是终生问题?

我的代码无法编译,我不明白为什么。这是一个简化的、人为的版本: 结构体<'a> { 切片:&'a [u8], } 结构 ThingGetter { 缓冲...

回答 1 投票 0

rustc 无法推断特征实现中的生命周期

我有以下代码: 无论如何使用; 结构内部值; 枚举值{ 整数(i32), 其他(内在价值), } 为 &InnerValue 实现 TryFrom<&Value> { 类型错误=无论如何::错误;...

回答 1 投票 0

如何使用BufReader的fill_buff并通过TcpStream进行消费

以下代码无法编译 使用 std::io::{BufRead, BufReader}; 使用 std::net::{TcpListener}; fn 主() { 让侦听器 = TcpListener::bind(format!("0.0.0.0:{}", 7007)).unwrap()...

回答 1 投票 0

在循环中调用使用 `&mut self.0` 的函数 (E0499)

我正在寻找一种方法来解决这种特定情况下缺乏波洛尼乌斯的问题。据我目前的理解,其他答案似乎不适用。 我有两个结构,来源...

回答 1 投票 0

Rust 返回集合中的对象,其生命周期比集合本身短

我本质上试图使用 HashSet 创建堆分配对象的缓存。我的想法是我有一个包装字节引用的结构,并且在创建新对象时,我检查字节是否...

回答 1 投票 0

返回字符串如何修复无法返回引用临时值的值

我想在返回之前过滤 debug_args 函数中的消息: 酒吧特征 MyLog { fn debug_args(&self) -> &dyn std::fmt::Debug; } pub 结构 TracingMyLog<'a> { 记录:&...

回答 2 投票 0

“借用时临时值下降” - 如何使用路径列表引用?

我想将列表(Vec 或数组)作为函数参数发送到(异步)函数。每个路径都用于生成一个线程,该线程对该文件执行某些操作。 问题是,我找不到

回答 1 投票 0

为什么 const 生命周期省略不适用于 struct impl 中的 slice?

以下生命周期省略有效: 结构X; 隐式 X { const ONE: &str = "一"; } 为什么以下不起作用? 结构X; 隐式 X { 常量二:&[&str] = &[&...

回答 1 投票 0

创建具有足够生命周期的切片切片

我有一个函数 foo ,它接受参数数组切片的数组切片,但是我似乎无法创建一个寿命足够长的变量来将其作为参数传递: fn 主() { 让穆特出去...

回答 3 投票 0

DAPR 演员一生 - 优雅停止

假设我有一个 DAPR actor 实现,它涵盖了在单线程循环中实现的长时间运行的操作。演员有两个职责: 当演员创造时 - 它也创造...

回答 1 投票 0

尝试终生重用 Vec 时如何取悦借用检查员

我在 Rust 中遇到的一个常见模式是这样的: 结构 Foo { /*...*/ } 结构FooProcessor { foos: Vec<&'??? mut Foo>, // 这个生命周期是问题,请参阅解释...

回答 1 投票 0

基于范围的 for 循环中 range-init 的生命周期是多少?

在最新的 C++ 标准中,它意味着: 对于(富:酒吧) 巴兹; 相当于: { 自动 && r = 栏; for ( auto it = r.begin(), end = r.end(); it != end; ++it ) { ...

回答 2 投票 0

std::construct_at 使用 std::byte / unsigned char 数组中的内存

使用 std::byte / unsigned char 数组和 std::construct_at 来提供存储是一个非常常见的示例。 //假设A是一个非标准布局类用户定义类 alignas(A) std::byte st...

回答 1 投票 0

Azure 函数 - 在全局每个日志语句中添加 InitationId

我正在编写一个Azure函数,我想记录当前正在执行的函数的invocationId与日志消息一起记录。我有一个 CustomLogger 类,利用 dotnet 的 ILogger 接口...

回答 1 投票 0

了解 Rust 的 Trait 对象和不同函数签名中的生命周期注释

我正在研究 Rust 中的 Traits 和 Trait 对象。在 Trait 章节中,我以与编译器建议不同的方式解决了第六个练习。以下代码定义了两个结构体(Sheep 和 Co...

回答 1 投票 0

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