Latest web development tutorials

Idź stałą językową

Wartość stała jest prosty identyfikator, gdy program jest uruchomiony, kwota nie zostanie zmodyfikowany.

Stała typu dane mogą być tylko logiczną, numeryczną (Integer, zmiennoprzecinkowe i liczby zespolone) i łańcuch.

Stałe zdefiniowane formacie:

const identifier [type] = value

Można pominąć specyfikacja typu [typ], ponieważ kompilator można wywnioskować wartość zmiennej do jego typu.

  • Jednoznaczne określenie typu: const b string = "abc"
  • Implicite definicja typu: const b = "abc"

Wiele z tego samego rodzaju, instrukcja może być podana w sposób następujący:

const c_name1, c_name2 = value1, value2

Poniższy przykład pokazuje zastosowanie stałych:

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)   
}

Przykłady powyższych wyników operacyjnych, co następuje:

面积为 : 50
1 false str

Stałe mogą być także stosowane do wyliczenia:

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

Liczby 0, 1 i 2, odpowiednio, w imieniu nieznany płci, kobiet i mężczyzn.

Stałe mogą korzystać len (), czapki (), unsafe.Sizeof (), aby obliczyć wartość stałej ekspresji. Stała wyrażenie, funkcja musi być wbudowane funkcje, ale w przeciwnym razie kompilator:

package main

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

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

Przykłady powyższych wyników operacyjnych, co następuje:

abc 3 16

odrobina

jota specjalne stałe, można uznać za zmiany kompilator może być stała.

Gdy każdy z const słowo kluczowe pojawi, zostaje wyzerowany, a potem następny, zanim const pojawia raz na jotę, stanowią one numery są automatycznie zwiększane o jeden.

jota mogą być wykorzystywane jako wartości liczby:

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

Pierwszy jota równe 0, gdy stosowany jest jota nowej linii, to automatycznie dodawana do wartości 1, w związku z a = 0, b = 1, c = 2 może być w skrócie, co następuje:

const (
    a = iota
    b
    c
)

Zastosowanie jota

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)
}

Przykłady powyższych wyników operacyjnych, co następuje:

0 1 2 ha ha 100 100 7 8

Spójrz jotę ciekawszych przykładów:

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)
}

Przykłady powyższych wyników operacyjnych, co następuje:

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

jota stanowi od 0 do automatycznego dodawania 1, więc i = 1 << 0, j = 3 << 1 (<< reprezentuje lewy shift znaczy), a mianowicie: i = 1, j = 6, to nie jest problem, klucz k i l, wyjście z wyglądu, k = 3 << 2, l = 3 << 3.