Estruturas anônimas e tuplas
Crie valores agrupados sob demanda.
Estruturas anônimas e tuplas é uma aula grátis de Zig Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Zig Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Zig Academy inclui 4 aulas no total.
Às vezes você só precisa dele uma vez
Nem todo agrupamento merece um tipo nomeado. Zig permite escrever uma estrutura anônima diretamente no local em que ela é usada.
Basta remover o nome
Um literal de estrutura anônima começa com .{ e lista os campos por nome, sem escrever um tipo antes dele.
const p = .{ .x = 1, .y = 2 };Use os campos normalmente
Você lê os campos da mesma forma que em uma estrutura nomeada, usando um ponto. Aqui, p.x vale 1 e p.y vale 2.
const sum = p.x + p.y;Converta para um tipo nomeado
Um literal anônimo pode ser convertido em uma estrutura nomeada quando o tipo de destino é conhecido, como no valor de retorno.
fn make() Point {
return .{ .x = 0, .y = 0 };
}Tuplas não têm nomes de campos
Deixe os nomes dos campos de fora e você obterá uma tupla: uma estrutura anônima cujos campos são acessados pela posição.
const pair = .{ 1, 2 };Acesse uma tupla por índice
Acesse um campo da tupla pelo número, escrito como um nome de campo. Assim, pair[0] vale 1 e pair[1] vale 2.
const first = pair[0];Tipos diferentes são permitidos
Cada campo de uma tupla pode ter um tipo diferente. Um único literal pode conter simultaneamente um inteiro, um booleano e uma string.
const row = .{ 42, true, "hi" };Tuplas têm um comprimento
Uma tupla ainda é uma estrutura, portanto tem um len conhecido em tempo de compilação, que você pode ler com tuple.len.
const n = row.len; // 3Ótimo para argumentos de impressão
std.debug.print recebe uma tupla de valores para formatar. Esse .{} que você passa é uma tupla anônima.
std.debug.print("{} {}\n", .{ 1, 2 });Percorra uma tupla
Como o comprimento é conhecido em tempo de compilação, você pode percorrer os campos de uma tupla com um laço inline for.
inline for (row) |field| {
_ = field;
}Nomeada ou posicional
Prefira uma estrutura anônima quando os nomes trouxerem clareza, e uma tupla quando bastar um grupo curto e ordenado.
Verificação rápida
Qual é a diferença entre uma tupla e uma estrutura anônima nomeada?
Recapitulação
Você conheceu estruturas anônimas e tuplas: .{ .x = 1 } é inline e nomeada, enquanto .{ 1, 2 } é uma tupla posicional. 📦
Perguntas Frequentes
A aula “Estruturas anônimas e tuplas” é grátis?
Sim — o texto completo de “Estruturas anônimas e tuplas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Zig Academy, atualize para CoddyKit PRO. O curso de Zig Academy inclui 4 aulas no total.
O que vou aprender em “Estruturas anônimas e tuplas”?
Crie valores agrupados sob demanda. Você pratica Zig Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Zig Academy?
Nenhuma experiência prévia é necessária. Zig Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Estruturas anônimas e tuplas”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Zig Academy?
Sim. Cada aula de Zig Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Declarando estruturas e campos
- Métodos e o parâmetro self
- Valores padrão dos campos
- Estruturas anônimas e tuplas