1
resposta

Observação

A resposta dessa pergunda, poderia ser a letra A, em um cenário onde as variaveis, arquivo e err já existissem Alem disso, a alternativa C ignora um retorno de erro, e é importante deixar claro que não é uma boa prática ignorar esse tipo de retorno

1 resposta

Olá, Victor!

Sua observação é muito pertinente. Na linguagem Go, é uma boa prática sempre verificar os erros retornados pelas funções. Ignorar o retorno de erro, como na opção C, pode levar a problemas não detectados.

Sobre a opção A, você está correto. Se as variáveis 'arquivo' e 'err' já tivessem sido declaradas anteriormente, poderíamos usar o operador de atribuição (=) em vez do operador de declaração e atribuição (:=). Portanto, o código seria algo assim:

var arquivo *os.File
var err error
arquivo, err = os.Open("sites.txt")
if err != nil {
    // Tratar o erro aqui
}

No entanto, na pergunta do exercício, o contexto parece ser que 'arquivo' e 'err' não foram declarados anteriormente. Portanto, a opção A não seria correta nesse contexto específico.

Espero ter ajudado e bons estudos!