gpt4 book ai didi

generics - 如何在 Vec 中存储具有不同参数的类型?

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

<分区>

我试图在 Rust 中建立一个树结构,但我遇到了如何存储节点列表的问题,这些节点存储不同类型的值,因此具有不同的类型参数。

问题的简化版本如下:

struct Node<T> {
pub props: T,
pub children: Vec<Node>
}

fn main() {
let node = Node {
props: (42, 6),
children: vec![Node {
props: Some("potatoes"),
children: vec![]
}]
};
}

编译失败,出现以下错误:

error[E0243]: wrong number of type arguments: expected 1, found 0
--> src/main.rs:4:19
|
4 | children: Vec<Node>
| ^^^^ expected 1 type argument

我不能提供类型参数,因为它必须被允许是任何东西。执行此操作的最佳方法是什么?

我看过this question ,但它不涉及类型参数。

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