rust - 调用lambda时“Cannot infer an appropriate lifetime”

标签 rust

我有以下代码:

fn main() {
    let get = |v: &u32| -> &u32 {
        v
    };
    let x : u32 = 0;
    let y = get(&x);
}

我不明白的这个produces an error:cannot infer an appropriate lifetime due to conflicting requirements。如果我将lambda设为自由函数,则可以正常工作。

如何使此代码编译?

最佳答案

显然,这是正在考虑的已知Rust限制。 Discussed here

关于rust - 调用lambda时“Cannot infer an appropriate lifetime”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61844789/

相关文章:

arrays - 如何在数组中添加一个值?

rust - 将向量切片作为参数传递给函数

rust - 有没有办法将参数与 Rust 宏相匹配?

rust - 如何创建一个全局的、可变的单例?

rust - 如何在递归宏扩展中调用 concat_idents?

types - 可以访问结构成员的 'TypeId' 吗?

rust - 有条件地捕获闭包中的变量以实现自定义控件

text - 我怎样才能使用格式! no_std 环境中的宏?

rust - 如何用这个简单的代码满足 Rust 借用检查器的要求?

gcc - GCC 的 ASAN 能否提供与 Rust 相同的内存安全性?