Module alloc::vec1.0.0[][src]

Expand description

具有堆已分配内容的连续可增长数组类型,写为 Vec<T>

Vectors 具有 O(1) 索引,摊销的 O(1) 推送 (到末尾) 和 O(1) 弹出 (从末尾)。

Vectors 确保它们分配的字节数永远不会超过 isize::MAX 字节。

Examples

您可以使用 Vec::new 显式创建 Vec:

let v: Vec<i32> = Vec::new();
Run

… 或使用 vec! 宏:

let v: Vec<i32> = vec![];

let v = vec![1, 2, 3, 4, 5];

let v = vec![0; 10]; // 十个零
Run

您可以将 push 值添加到 vector 的末尾 (这将根据需要增大 vector) :

let mut v = vec![1, 2];

v.push(3);
Run

弹出值的工作方式大致相同:

let mut v = vec![1, 2];

let two = v.pop();
Run

Vectors 还支持索引 (通过 IndexIndexMut traits) :

let mut v = vec![1, 2, 3];
let three = v[2];
v[1] = v[1] + 5;
Run

Structs

DrainFilterExperimental

使用闭包确定是否应删除元素的迭代器。

Drain

Vec<T> 的 draining 迭代器。

IntoIter

从 vector 移出的迭代器。

Splice

Vec 的拼接迭代器。

Vec

连续的可增长数组类型,写为 Vec<T>,发音为 ‘vector’。