English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O Go linguagem de programação reservou duas funções de uso especial, essas funções sãoprincipal()einit()função.
No Go linguagem de programação,mainpacote é um pacote especial, usado juntamente com o programa executável e o pacote contémprincipal()função.principal()função é um tipo especial de função, que é o ponto de entrada do programa executável. Ela não tem parâmetros e não retorna nada. Devido ao chamamento automáticoprincipal()função, então não há necessidade de chamar explicitamenteprincipal()função, e cada programa executável deve conter um package main eprincipal()função.
//Declaração do pacote principal package main //Importar pacotes import ( "fmt" "sort" "strings" "time" ) func principal() { //Ordenar a fatia s := []int{345, 78, 123, 10, 76, 2, 567, 5} sort.Ints(s) fmt.Println("fatia ordenada: ", s) // Procurar índice de valor fmt.Println("Índice de valor: ", strings.Index("w3codebox, "ks") //Mostrar timestamp atual fmt.Println("Timestamp: ", time.Now().Unix()) }
Saída:
fatia ordenada: [2 5 10 76 78 123 345 567] Índice de valor: -1 Timestamp: 1593335332
A função init() é como a função principal, sem parâmetros e sem retornar nada. Cada pacote possui essa função, que é chamada ao inicializar o pacote. A função é implicitamente declarada, então você não pode chamá-la de lugar nenhum e pode criar várias funções init() no mesmo programa, que serão executadas na ordem de criação. Você pode criar a função init() em qualquer lugar do programa e elas serão chamadas na ordem do nome do arquivo (ordem alfabética). Permite que você coloque instruções na função init(), mas sempre lembre-se de executar a função init() antes da função principal(), então ela não depende da função principal(). O objetivo principal da função init() é inicializar variáveis globais que não podem ser inicializadas no contexto global.
package main import "fmt" //Múltiplas funções init() func init() { fmt.Println("Bem-vindo à função init()") } func init() { fmt.Println("Olá! Função init()") } func principal() { fmt.Println("Bem-vindo à função principal()") }
Saída:
Bem-vindo à função init() Olá! Função init() Bem-vindo à função principal()