Latest web development tutorials

Ir Funções idioma

Função é o bloco básico de código para a realização de uma tarefa.

Siga pelo menos uma função main () da linguagem.

Você pode dividir as diferentes funções através da lógica de função para executar cada função é especificado tarefa.

declaração de função informa o nome do compilador função, tipo de retorno e parâmetros.

Ir linguagem biblioteca padrão fornece uma variedade de funções embutidas pode usar. Por exemplo, a função len () pode aceitar diferentes tipos de argumentos e retorna o tipo de comprimento. Se passarmos um comprimento da corda é devolvido, se os números de entrada, a função retorna o número contido na matriz.


definição de função

Ir função da linguagem é definido no seguinte formato:

func function_name( [parameter list] ) [return_types] {
   函数体
}

definição de função analítica:

  • func: função inicia uma declaração do func
  • function_name: nome da função, nome da função e lista de parâmetros em conjunto, constituem a assinatura de função.
  • lista de parâmetros]: lista de parâmetros, o parâmetro como um espaço reservado, quando a função é chamada, você pode passar um valor para o parâmetro, esse valor é chamado os parâmetros reais. lista de parâmetro especifica o tipo de parâmetro, ordem e número de parâmetros. Parâmetro é opcional, essa função não pode conter parâmetros.
  • return_types: tipo de retorno, a função retorna um valor. return_types é o tipo de dados do valor da coluna. Algumas funções não precisa retornar um valor, caso em que não return_types necessário.
  • Corpo da função: A função definida conjunto de códigos.

Exemplos

Os exemplos seguintes são max () código de função, a função passada duas inteiro parâmetros num1 e num2, e retorna o valor máximo destes dois parâmetros:

/* 函数返回两个数的最大值 */
func max(num1, num2 int) int {
   /* 声明局部变量 */
   var result int

   if (num1 > num2) {
      result = num1
   } else {
      result = num2
   }
   return result 
}

chamada de função

Quando você cria uma função, você define uma função do que precisa ser feito para executar as tarefas atribuídas ao chamar a função de mudança.

Chamar a função, passando os parâmetros de função e retornar valores, por exemplo:

package main

import "fmt"

func main() {
   /* 定义局部变量 */
   var a int = 100
   var b int = 200
   var ret int

   /* 调用函数并返回最大值 */
   ret = max(a, b)

   fmt.Printf( "最大值是 : %d\n", ret )
}

/* 函数返回两个数的最大值 */
func max(num1, num2 int) int {
   /* 定义局部变量 */
   var result int

   if (num1 > num2) {
      result = num1
   } else {
      result = num2
   }
   return result 
}

Os exemplos acima chamar na função main () função max (), o resultado é:

最大值是 : 200

Os valores múltiplos de retorno de função

Vá função pode retornar vários valores, por exemplo:

package main

import "fmt"

func swap(x, y string) (string, string) {
   return y, x
}

func main() {
   a, b := swap("Mahesh", "Kumar")
   fmt.Println(a, b)
}

A exemplos de implementação acima dos resultados:

Kumar Mahesh

Argumentos da função

Se os parâmetros da função, a variável pode ser encaminhado para o parâmetro função.

Parâmetros definidos nas funções de variáveis ​​locais no corpo.

Chamar a função, você pode passar parâmetros de duas maneiras:

tipo de parto descrição
transferência de valores Valor é passado ao chamar a função refere-se aos parâmetros reais passados ​​para a função de cópia, de modo que se os parâmetros da função pode ser modificado, não afetará os parâmetros reais.
Passados por referência Passagem por referência refere-se ao chamar a função passa o endereço do parâmetro real para a função, então a função para modificar os parâmetros realizados, irá afectar os parâmetros reais.

Por padrão, a linguagem Go é passado por valor, ou seja, durante a chamada não vai afetar os parâmetros reais.


utilização da função

utilização da função descrição
Funções como valores Depois a função é definida como um valor de usar
Closures Encerramentos são funções anônimas podem ser usados ​​em programação dinâmica
caminho O método é uma função que contém o destinatário