Rust 书 有时会说类似于“这里我们想要一个 Vec<T>
”的话。
这是否意味着除了“类型为向量”的东西之外还有其他含义?另外,你会怎样发音它——“vek tee”?
Vec<T>
是指“一个元素的向量,这些元素是T
类型”。让我们来了解一下...
一个向量是一个数据结构,它包含零个或多个相同类型的元素。这些元素有顺序,可以通过索引(0、1、...)访问。您可以添加和删除元素。元素本身存储在一个连续的堆分配区域中。
T
是一个常见的泛型类型参数。类型参数允许您编写抽象特定类型的代码,而不关心该类型是什么。在这个例子中,我们可以创建一个具有任何内部值的MyThing
:
struct MyThing<T> {
thing: T,
}
T
是一个类型参数,因为它被包含在<>
中。它不一定是T
,也可以是S
、Z
或MyLittlePony
。然而,使用T
作为“type”的速记方式很常见。使用单字母名称以避免与具体类型名称冲突也很常见。x
或在编程中使用foo
一样——我们不想指定的东西。Vec<
,另一面印上 >
。 - DK.Vec<_>
。 - Nathan Long