Como imprimir estruturas e arrays em Rust? (Debug, Display, formatação)
Olá a todos! Sou novo em Rust e não consigo entender a saída de tipos de dados complexos. Tenho uma estrutura simples `User` e um array de números. Quando tento imprimi-los com `println!`, o compilador reclama e gera erros. Aqui está meu código:
```rust
struct User {
name: String,
age: u32,
}
fn main() {
let user = User { name: "Алиса".to_string(), age: 30 };
println!("Пользователь: {}", user); // Erro!
let numbers = [1, 2, 3, 4, 5];
println!("Массив: {}", numbers); // Também erro!
}
```
O compilador menciona algo sobre `std::fmt::Display` e `Debug`. Pesquisei, mas é muito complicado. Preciso apenas imprimir os dados para ver seu conteúdo, sem escrever muito código. Como fazer isso de forma correta e rápida? Em outras linguagens (Python, JavaScript) funciona de imediato. Por que em Rust é tão difícil?
Explique, por favor, para um iniciante: o que são as traits `Display` e `Debug`, como elas diferem e como usá-las. Estou especialmente interessado em como imprimir arrays.