O melhor tutorial Vá constante idioma em 2024. Neste tutorial você pode aprender iota,

Vá constante idioma

valor constante é um identificador simples, o programa está sendo executado, o valor não será modificado.

tipo de dado constante só pode ser booleano, numérico (inteiro, ponto flutuante e números complexos) e string.

Constantes formato definido:

const identifier [type] = value

Você pode omitir o especificador de tipo [tipo], porque o compilador pode inferir o valor da variável para seu tipo.

  • tipo explícito definição: const b string = "abc"
  • Implícita definição do tipo: const b = "abc"

Uma pluralidade do mesmo tipo de instrução podem ser abreviados como se segue:

const c_name1, c_name2 = value1, value2

O exemplo que se segue demonstra a aplicação das constantes:

package main

import "fmt"

func main() {
   const LENGTH int = 10
   const WIDTH int = 5   
   var area int
   const a, b, c = 1, false, "str" //多重赋值

   area = LENGTH * WIDTH
   fmt.Printf("面积为 : %d", area)
   println()
   println(a, b, c)   
}

Exemplos dos resultados operacionais acima da seguinte forma:

面积为 : 50
1 false str

As constantes também podem ser usadas para enumerar:

const (
    Unknown = 0
    Female = 1
    Male = 2
)

Números 0, 1 e 2, respectivamente, em nome do desconhecido gênero, mulheres e homens.

As constantes podem usar len (), tampão (), unsafe.Sizeof () para calcular o valor de uma expressão constante. expressão constante, a função deve ser construído em funções, mas de outra forma o compilador:

package main

import "unsafe"
const (
    a = "abc"
    b = len(a)
    c = unsafe.Sizeof(a)
)

func main(){
    println(a, b, c)
}

Exemplos dos resultados operacionais acima da seguinte forma:

abc 3 16

iota

iota, constante especial, pode ser considerada uma modificação do compilador podem ser constante.

Quando cada um de a palavra-chave const aparecer, é reposto a zero, e então o seguinte, antes de const aparece uma vez a cada iota, eles representam números são aumentados automaticamente por um.

iota podem ser utilizados como valores de enumeração:

const (
    a = iota
    b = iota
    c = iota
)

O primeiro pingo igual a 0, sempre que iota nova linha é utilizado, ele será automaticamente adicionado ao valor de 1; portanto, a = 0, b = 1, c = 2 podem ser abreviados como se segue:

const (
    a = iota
    b
    c
)

uso iota

package main

import "fmt"

func main() {
    const (
            a = iota   //0
            b          //1
            c          //2
            d = "ha"   //独立值,iota += 1
            e          //"ha"   iota += 1
            f = 100    //iota +=1
            g          //100  iota +=1
            h = iota   //7,恢复计数
            i          //8
    )
    fmt.Println(a,b,c,d,e,f,g,h,i)
}

Exemplos dos resultados operacionais acima da seguinte forma:

0 1 2 ha ha 100 100 7 8

Olhe pingo de exemplos interessantes:

package main

import "fmt"
const (
	i=1<<iota
    j=3<<iota
    k
    l
)

func main() {
	fmt.Println("i=",i)
	fmt.Println("j=",j)
	fmt.Println("k=",k)
	fmt.Println("l=",l)
}

Exemplos dos resultados operacionais acima da seguinte forma:

i= 1
j= 6
k= 12
l= 24

iota representa de 0 a adicionar automaticamente 1, então i = 1 << 0, j = 3 << 1 (<< representa desvio à esquerda significa), a saber: i = 1, j = 6, isso não é problema, a chave k e L, a saída a partir do olhar, k = 3 << 2, G = 3 << 3.

Vá constante idioma
10/30