Como obter uma slice de Vec<T> em Rust?
Olá a todos! Estou começando a aprender Rust e encontrei um problema ao trabalhar com vetores. Tenho um `Vec` e preciso passar parte dos seus dados para uma função que aceita uma slice `&[u32]`. Tentei fazer isso de várias maneiras, mas sempre recebo erros de compilação.
Aqui está um exemplo do meu código:
```rust
fn main() {
let numbers = vec![10, 20, 30, 40, 50];
// Quero obter uma slice dos três primeiros elementos
let slice = &numbers[0..3];
// Função que aceita uma slice
process_slice(slice);
}
fn process_slice(data: &[u32]) {
for &item in data {
println!("{}", item);
}
}
```
Este código funciona, mas não entendo alguns detalhes. Por exemplo:
1. Qual é a diferença entre `&vec[..]` e `vec.as_slice()`? Eles fazem a mesma coisa?
2. Ka