Go · Intermediário · Português · Técnico
função construtora
Convenção de criar valores por uma função chamada NewTipo, que devolve o tipo já inicializado. Go não tem construtores na linguagem, então essa função faz o papel.
Onde usar
Aparece quando o zero value não basta, por exemplo para inicializar um mapa interno ou validar parâmetros. Pode devolver também um error quando a criação pode falhar.
Em código
type Fila struct{ itens []int }
func NewFila() *Fila {
return &Fila{itens: make([]int, 0, 8)}
}
// uso: f := NewFila()Exemplos
Cria o cliente pela função construtora, não direto pela struct.
A função construtora devolve um erro se a configuração for inválida.
Cuidado
Não é um construtor de verdade: nada impede alguém de criar a struct diretamente, ignorando a função.
Sinônimos
função New