3.6 `Vec`
06-
Vec — Comprehensive Rust1分钟内可阅读完
译文 · 基于 Comprehensive Rust
原文链接: https://google.github.io/comprehensive-rust/std-types/vec.html
3.6 Vec
Vec 是标准的可调整大小、堆分配缓冲区:
| |
Vec 实现了 Deref<Target = [T]>,这意味着你可以在 Vec 上调用切片方法。
Vec与String、HashMap一样是一种集合。它包含的数据存储在堆上。这意味着数据量不必在编译期已知,运行时可增可减。- 注意
Vec<T>也是泛型类型,但不必显式指定T。与 Rust 类型推断一贯做法一样,T在第一次push调用时就确定了。vec![...]是替代Vec::new()的标准宏,并支持向向量添加初始元素。- 用
[]索引向量,但越界会 panic。或者用get会返回Option。pop函数会移除最后一个元素。