Go · Essencial · Inglês · Técnico
make
Função embutida que cria e inicializa slices, maps e canais, com tamanho ou capacidade opcionais.
Onde usar
'make([]int, 0, 100)' pré-aloca capacidade e evita realocações em um loop com append. Esquecer o make num map é fonte clássica de panic.
Em código
s := make([]int, 0, 10)
m := make(map[string]bool)
ch := make(chan int, 2)
fmt.Println(len(s), cap(s), len(m), cap(ch))Exemplos
Use make with a capacity to avoid reallocations.
Use make com capacidade para evitar realocações.
You forgot to make the map, that's why it panics.
Você esqueceu de dar make no map, por isso ele dá panic.
Cuidado
Não é o mesmo que new: make só serve para slice, map e channel e devolve o valor pronto, enquanto new devolve um ponteiro para o zero value.