Najlepszy samouczek Idź stałą językową W 2024 r. W tym samouczku możesz dowiedzieć się odrobina,

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.

Idź stałą językową
10/30