Estruturas do Go são coleções de campos digitados.
Eles são úteis para agrupar dados em conjunto para formar
registros.
|
|
|
|
|
|
Este tipo de estrutura pessoa possui os campos nome e idade .
|
type pessoa struct {
nome string
idade int
}
|
|
|
Esta sintaxe cria uma nova estrutura.
|
fmt.Println(person{"Bob", 20})
|
Você pode nomear campos ao inicializar uma estrutura.
|
fmt.Println(person{name: "Alice", idade: 30})
|
Campos omitidos serão de valor-zero.
|
fmt.Println(pessoa{nome: "Fred"})
|
Um prefixo & rende um ponteiro para a estrutura.
|
fmt.Println(&pessoa{nome: "Ann", idade: 40})
|
Acessa campos de estrutura com um ponto.
|
s := pessoa{nome: "Sean", idade: 50}
fmt.Println(s.nome)
|
Você pode também usar pontos com ponteiros de estruturas - os
ponteiros são desreferenciados automaticamente.
|
sp := &s
fmt.Println(sp.idade)
|
Estruturas são mutáveis.
|
sp.idade = 51
fmt.Println(sp.idade)
}
|