Latest web development tutorials

Zum Sprachkonstante

Konstanter Wert ist ein einfacher Bezeichner, das Programm läuft, wird der Betrag nicht geändert werden.

Konstante Datentyp kann nur sein, boolean, numerisch (integer, Gleitkomma und komplexe Zahlen) und String.

Konstanten definiert Format:

const identifier [type] = value

Sie können die Typangabe [Art] weglassen, weil der Compiler den Wert der Variablen auf seine Art schließen kann.

  • Explizite Typdefinition: const b string = "abc"
  • Implizite Typdefinition: const b = "abc"

Eine Mehrzahl von der gleichen Art von Anweisung kann wie folgt abgekürzt werden:

const c_name1, c_name2 = value1, value2

Das folgende Beispiel zeigt die Anwendung der Konstanten:

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

Beispiele für die obigen operativen Ergebnisse wie folgt:

面积为 : 50
1 false str

Konstanten können auch aufzuzählen verwendet werden:

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

Zahlen 0, 1 bzw. 2 im Namen von unbekannten Geschlecht, Frauen und Männer.

Konstanten können len () verwenden, Kappe (), unsafe.Sizeof () den Wert eines konstanten Ausdruck zu berechnen. Konstanter Ausdruck, muss die Funktion eingebaut werden Funktionen, aber ansonsten ist der Compiler:

package main

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

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

Beispiele für die obigen operativen Ergebnisse wie folgt:

abc 3 16

Jota

iota, spezielle Konstante, kann eine Modifikation des Compilers betrachtet werden kann konstant sein.

Wenn jeder der const Schlüsselwort angezeigt wird, auf Null zurückgesetzt wird, und dann erscheint der nächste vor const jedes iota einmal, sie repräsentieren Zahlen, die durch eine automatisch erhöht werden.

Jota kann als Aufzählungswerte verwendet werden:

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

Die erste iota gleich 0 ist, wenn iota neue Linie verwendet wird, wird es automatisch auf den Wert von 1 hinzugefügt werden, daher a = 0, b = 1, c = 2, kann wie folgt abgekürzt werden:

const (
    a = iota
    b
    c
)

Jota Usage

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

Beispiele für die obigen operativen Ergebnisse wie folgt:

0 1 2 ha ha 100 100 7 8

Schauen Sie Jota interessante Beispiele:

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

Beispiele für die obigen operativen Ergebnisse wie folgt:

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

Jota für 0 automatisch 1 hinzufügen, so i = 1 << 0, j = 3 << 1 (<< stellt Linksverschiebung bedeutet), und zwar: i = 1, j = 6, ist dies kein Problem, der Schlüssel k und l, die Ausgabe aus dem Look, k = 3 << 2, l = 3 << 3.