2023-11-18 09:54:14 +03:00
|
|
|
# Vector.
|
|
|
|
|
|
|
|
# Create.
|
|
|
|
|
|
|
|
## Using macro.
|
|
|
|
|
|
|
|
```rust
|
|
|
|
let array: [i32; 4] = [10, 20, 30, 40];
|
|
|
|
let vector: Vec<i32> = vec!(10, 20, 30, 40);
|
|
|
|
```
|
|
|
|
|
|
|
|
# Iterate.
|
|
|
|
|
|
|
|
## For-each.
|
|
|
|
|
|
|
|
```rust
|
|
|
|
for (item in vector.iter()) {} // Immutable iterate.
|
|
|
|
for (item in vector.iter_mut()) {} // Mutable iterate.
|
|
|
|
```
|
|
|
|
|
|
|
|
## Map.
|
|
|
|
|
|
|
|
```rust
|
|
|
|
vector.iter().map(|element| {}).collect()
|
|
|
|
```
|
2023-11-19 00:23:43 +03:00
|
|
|
|
|
|
|
# Copy.
|
|
|
|
|
|
|
|
## Clone.
|
|
|
|
|
|
|
|
You can clone a Vec in cases when you need to modify a copy.
|
|
|
|
|
|
|
|
```rust
|
|
|
|
foo(vector.clone())
|
|
|
|
```
|
2023-11-20 21:28:15 +03:00
|
|
|
|
|
|
|
# Push (append).
|
|
|
|
|
|
|
|
```rust
|
|
|
|
vector.push(4);
|
|
|
|
```
|