ExpertiDict

Go · Intermediário · Inglês · Técnico

new

/nuː/função embutida

Função embutida que aloca memória zerada para um tipo e devolve um ponteiro para ela. new(T) retorna *T apontando para o zero value de T.

Onde usar

Aparece em código que precisa de um ponteiro para um valor simples, como new(int). Para structs, a forma &T{} é mais comum e permite preencher campos.

Em código

p := new(int)
fmt.Println(*p) // 0
*p = 7
fmt.Println(*p) // 7

Exemplos

Use new(int) to get a pointer to a zeroed integer.

Use new(int) para obter um ponteiro para um inteiro zerado.

Most people write &Config{} instead of new(Config).

A maioria escreve &Config{} em vez de new(Config).

Cuidado

Não confunda com make: new serve para qualquer tipo e devolve ponteiro; make só cria slice, map e channel e devolve o valor pronto.

Antônimos

make

Veja também

Todos os termos de Go