Sobes.tech
Middle+

O que significa o símbolo & antes de http.Client{}?

sobes.tech IA

Resposta da IA

O e comercial (&) antes da expressão http.Client{} em Go significa obter o endereço (ponteiro) do objeto de estrutura http.Client criado. Ou seja, &http.Client{} cria uma nova instância da estrutura e retorna um ponteiro para ela.

Isto é útil quando precisa passar uma referência ao objeto para evitar cópia da estrutura ou para poder modificar o objeto através do ponteiro.

Exemplo:

client := &http.Client{}
// client tem o tipo *http.Client

Sem o e comercial, a variável conterá a própria estrutura, não um ponteiro para ela.