gpt4 book ai didi

lifetime - 嵌套生命周期

转载 作者:行者123 更新时间:2023-11-29 08:05:43 27 4
gpt4 key购买 nike

我有点难过。我希望通过以下代码。

enum Source<'self> {
String(&'self str),
ReaderUtil(&'self ReaderUtil)
}

pub struct Matrix<'self> {
source: &'self Source
}

fn main() {

}

我一开始只是枚举,但后来因为我需要使用 & 指针,所以我不得不给它一个生命周期。当我将该枚举添加到另一个结构时出现问题。我知道除了 'self 之外我不能给 struct 其他生命周期但是它给了我一个生命周期错误,说 Source 中不允许匿名生命周期(这就像我没有添加任何生命周期一样).

最佳答案

enum Source<'self> {
String(&'self str),
ReaderUtil(&'self ReaderUtil)
}

pub struct Matrix<'self> {
source: &'self Source<'self>
}

fn main() {

}

您使用生命周期参数 enum Source<'self> 声明了您的枚举源.这意味着您还必须在 Matrix 中声明 Source 的生命周期。

关于lifetime - 嵌套生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18499830/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com