Structs, enums e traits
Rust Structs
Group related values into your own type with named fields.
O que você vai aprender
- Defining a struct
- Reading and changing fields
- Struct update syntax
User
name"Ada"age37activetrueYour own type with named fields
A struct is a type you define by naming its fields. It keeps related data together, such as the name, age and status of a user.
A struct value must be declared mut before a field can change. #[derive(Debug)] lets {:?} print the whole struct. ..user fills the fields that are not listed from another value, here only age.
Pontos-chave
- A struct value must be mut to change a field.
- #[
derive(Debug)] lets {:?} print it. - ..user copies the remaining fields.
Exemplo executável de Rust
main.rs
#[derive(Debug)]
struct User {
name: String,
age: u32,
active: bool,
}
fn main() {
let mut user = User {
name: String::from("Ada"),
age: 36,
active: true,
};
user.age += 1;
println!("{} is {}", user.name, user.age);
println!("{:?}", user);
let guest = User { name: String::from("Guest"), active: false, ..user };
println!("{} {} {}", guest.name, guest.age, guest.active);
}
Ada is 37
User { name: "Ada", age: 37, active: true }
Guest 37 falsePratique
Abra o exemplo no compilador online, mude um valor ou adicione uma linha e tente prever a saída antes de executar. Depois quebre o código de propósito e leia a mensagem do compilador.
Terminou esta lição?
Marque como aprendida para acompanhar seu progresso.
Seu progresso está salvo neste navegador Entre para mantê-lo em todos os dispositivos.
Pratique com um desafio
Use o conteúdo desta lição para resolver um problema real. Cada desafio roda no navegador, com testes instantâneos e uma revisão por IA.
Todos os desafios