English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico do Golang

Comandos de controle do Golang

Funções & métodos do Golang

Estruturas do Golang

fatias & arrays do Golang

Strings (String) do Golang

Ponteiros do Golang

Interfaces do Golang

Concorrência do Golang

Exceções (Error) do Golang

Outros itens do Golang

Nome do Parâmetro de Retorno do Go

No Golang, os parâmetros de retorno nomeados são frequentemente chamados de parâmetros nomeados. O Golang permite especificar nomes para os parâmetros de retorno ou resultados de uma função na assinatura ou definição da função. Ou seja, é o nome explícito das variáveis de retorno na definição da função. Basicamente, ele resolve a necessidade de mencionar o nome da variável no comando return. Usando parâmetros de retorno nomeados ou parâmetros nomeados, o comando return pode ser usado apenas no final da função para retornar os resultados ao chamador. Quando a função deve retornar vários valores, este conceito é geralmente usado. Portanto, para tornar o usuário mais confortável e melhorar a legibilidade do código, o Golang fornece essa funcionalidade.

Declarar parâmetros de retorno nomeados

Para declarar um parâmetro de resultado ou parâmetro de retorno nomeado, use apenas a parte do tipo de retorno da assinatura da função. A seguir está a sintaxe geral para declarar funções no Golang.

A sintaxe para declarar uma função sem parâmetros de retorno nomeados:

func função_name(Parâmetro-list)(Return_type){
    // corpo da função.....
}

Aqui, Return_Type é opcional e contém o tipo do valor retornado pela função. Se Return_Type for usado na função, deve ser usado a instrução return na função.

A sintaxe para declarar uma função com parâmetros de retorno nomeados:

func função_name(Parâmetro-list)(result_parameter1 data__type,result_parameter2 data_type,…。){ 
    //corpo da função…..
    //retorna
}

este(result_parameter1 data__type, result_parameter2 data_type, ....) é a lista de parâmetros de retorno nomeados e seus tipos. Você pode declarar n parâmetros de retorno nomeados.

Exemplo:Na linha de código func calculator(a, b int) (mul int, div int) abaixo do programa, contém parâmetros de retorno nomeados. A instrução de retorno no final da função não contém nenhum parâmetro. O compilador Go retornará automaticamente os parâmetros.

package main
import "fmt"
// Método principal
func main() {
    //Aqui é chamada a função
    //A função retorna dois valores
    m, d := calculator(105, 7)
    fmt.Println("105 x 7 = ", m)
    fmt.Println("105 / 7 = ", d)
}
// Função com parâmetros nomeados
func calculator(a, b int) (mul int, div int) {
    //Aqui, a atribuição simples pode ser usada
    //e inicializar seu valor
    mul = a * b
    div = a / b
    //Aqui está a palavra-chave return
    //Nenhum parâmetro de resultado
    return
}

Saída:

105 x 7 =  735
105 / 7 =  15

Importante

  • Se todos os tipos de dados dos parâmetros de retorno nomeados forem públicos ou idênticos, pode-se especificar o tipo de dados público. Compare o código a seguir com o exemplo lido anteriormente para melhor compreensão.

    //Função com parâmetros nomeados
    func calculator(a, b int) (mul, div int) {

    Aqui,muledivAs variáveis são do tipo int. Portanto, você também pode declarar parâmetros nomeados com tipos de dados genéricos, por exemplo, variáveis de função (ou sejaaeb)

  • O uso de parâmetros de retorno nomeados melhorará a legibilidade do código, pois é possível saber os parâmetros de retorno apenas lendo a assinatura da função.

  • Após o uso de parâmetros de retorno nomeados, a instrução de retorno geralmente é chamada de"Retorno nudo".

  • Por padrão, o Golang define todos os variáveis nomeadas com valores nulos, a função pode usá-las. Se a função não modificar o valor, ele será retornado automaticamente com o valor nulo.

  • Se você usarOperador de declaração curta (:=)Se inicializar parâmetros de retorno nomeados, será fornecido um erro, pois eles já foram inicializados pelo compilador Go. Portanto, você pode usar atribuição simples (=) para atribuir valores aos parâmetros de retorno nomeados.

    //Função com parâmetros nomeados
    func calculator(a, b int) (mul int, div int) {
        //Aqui, ele lançará um erro
        //Porque os parâmetros já foram definidos
        //Na assinatura da função
        mul := a * b
        div := a / b
        //Aqui está a palavra-chave return
        //Nenhum parâmetro de resultado
        return
    }
  • Parâmetros de retorno nomeados ou instruções de retorno nuda são aplicáveis apenas a assinaturas de função curtas. Para funções mais longas, é recomendável retornar explicitamente os parâmetros de resultado (sem usar parâmetros de retorno nomeados) para manter a legibilidade do código.

  • Para parâmetros de retorno nomeados, deve-se usar a instrução de retorno "nuda" (return).

Conhecimentos relevantes:Função no Golang