Ir constante idioma
valor constante es un identificador simple, el programa se está ejecutando, no se modificará la cantidad.
tipo de datos constante sólo puede ser booleano, numérico (entero, punto flotante y números complejos) y la cadena.
Constantes formato definido:
const identifier [type] = value
Se puede omitir el especificador de tipo [tipo], debido a que el compilador puede deducir el valor de la variable a su tipo.
- Tipo explícita definición:
const b string = "abc"
- Tipo implícita definición:
const b = "abc"
Una pluralidad del mismo tipo de declaración se puede abreviar como sigue:
const c_name1, c_name2 = value1, value2
El siguiente ejemplo demuestra la aplicación de las 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) }
Los ejemplos de los resultados operativos de arriba de la siguiente manera:
面积为 : 50 1 false str
Las constantes también se pueden utilizar para enumerar:
const ( Unknown = 0 Female = 1 Male = 2 )
Números 0, 1 y 2, respectivamente, en nombre del desconocido género, las mujeres y los hombres.
Las constantes pueden utilizar len (), la tapa (), unsafe.Sizeof () para calcular el valor de una expresión constante. expresión constante, la función debe ser incorporado en funciones, pero por lo demás el compilador:
package main import "unsafe" const ( a = "abc" b = len(a) c = unsafe.Sizeof(a) ) func main(){ println(a, b, c) }
Los ejemplos de los resultados operativos de arriba de la siguiente manera:
abc 3 16
ápice
iota, constante especial, se puede considerar una modificación del compilador puede ser constante.
Cuando cada uno de la palabra clave const aparece, se pone a cero, y luego el siguiente, antes de const aparece una vez cada ápice, que representan los números se incrementan automáticamente por uno.ápice se puede utilizar como valores de la enumeración:
const ( a = iota b = iota c = iota )
La primera iota igual a 0, cada vez que se usa iota nueva línea, automáticamente se añade al valor de 1, por lo que a = 0, b = 1, c = 2 se puede abreviar como sigue:
const ( a = iota b c )
Uso ápice
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) }
Los ejemplos de los resultados operativos de arriba de la siguiente manera:
0 1 2 ha ha 100 100 7 8
Mira ápice de ejemplos interesantes:
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) }
Los ejemplos de los resultados operativos de arriba de la siguiente manera:
i= 1 j= 6 k= 12 l= 24
ápice representa de 0 a agregar automáticamente 1, por lo que i = 1 << 0, j = 3 << 1 (<< representa significa desplazamiento a la izquierda), a saber: i = 1, j = 6, esto no es problema, la clave k y l, la salida de la mirada, k = 3 << 2, l = 3 << 3.