Variáveis

Forma completa e formas abreviadas de se declarar uma variável:

// Forma completa var variável_A1 int    = 10 var variável_A2 string = "dez"   // Forma menos abreviada var variável_B1 = 20 var variável_B2 = "vinte"   // Forma mais abreviada (variáveis locais apenas) variável_C1 := 30 variável_C2 := "trinta"

Uma variável global é aquela cujo escopo se estende por todo o programa, é acessível e mutável a partir de qualquer lugar [declaradas fora da função main]. A variável local, em vez disso, tem, digamos, a "vida útil" limitada: só existe (é acessível e mutável) no contexto (escopo) no qual foi declarada. A declaração completa é interessante quando seu valor não é imediatamente atribuído, pois seu tipo não poderia ser facilmente inferido pelo compilador. A forma menos abreviada é para variáveis globais que já começam com um valor inicial atribuído. Já a forma mais abreviada é conveniente para uso local sem que se tenha de declará-las previamente nem seus tipos.

O "for" nos dá um excelente exemplo de aplicação da forma mais abreviada:

for i := 0; i < 10; i++ { /* código */ }

Compile e perceba como o seguinte exemplo articula as variáveis conforme a sintaxe anteriormente descrita:

package main   import "fmt"   var variável_A2 string // Global var variável_B2 = "vinte..." // Global   func main() {   var variável_A1 int = 10 variável_A2 = "dez" // Global  var variável_B1 = 20 variável_B2 = "vinte" // Global variável_C1 := 30 variável_C2 := "trinta"   fmt.Printf("\n%d", variável_A1) fmt.Printf("\n%s", variável_A2) fmt.Printf("\n%d", variável_B1) fmt.Printf("\n%s", variável_B2) fmt.Printf("\n%d", variável_C1) fmt.Printf("\n%s", variável_C2)   fmt.Printf("\n")   /* Resultado 10 dez 20 vinte 30 trinta */ }
Comments