Latest web development tutorials

언어를 일정하게 이동

상수 값은 간단한 식별자, 프로그램이 실행되는 금액은 수정되지 않습니다.

정수 데이터 유형은 부울, 숫자 (정수, 부동 소수점과 복소수) 및 문자열이 될 수 있습니다.

상수 정의 형식 :

const identifier [type] = value

컴파일러의 유형에 변수의 값을 추정 할 수 있기 때문에, 형태 지정자 [형]를 생략 할 수있다.

  • 명시 적 유형 정의 : const b string = "abc"
  • 암시 적 유형 정의 : const b = "abc"

다음 구문의 동일한 유형의 다수의 축약 될 수있다 :

const c_name1, c_name2 = value1, value2

다음은 상수의 응용 프로그램을 보여줍니다

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

위의 운영 결과의 예는 다음과 같습니다 :

面积为 : 50
1 false str

상수는 열거 할 수 있습니다 :

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

숫자 0, 1, 2, 각각 성별 불명, 여성과 남성의 대신.

상수 LEN ()가, 캡 () unsafe.Sizeof ()은 상수 식의 값을 계산하는데 사용할 수있다. 상수 표현은, 함수가 기능 내장,하지만 그렇지 않으면 컴파일러해야합니다 :

package main

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

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

위의 운영 결과의 예는 다음과 같습니다 :

abc 3 16

이오타

IOTA 특별한 상수 컴파일러의 변형이 일정 할 수있는 고려 될 수있다.

const 키워드의 각이 0으로 재설정 한 다음 const를하기 전에 다음 한 번 모든 오타를 나타납니다 나타나면, 그들은 숫자가 자동으로 하나 증가 나타냅니다.

오타는 열거 형 값으로 사용할 수 있습니다 :

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

IOTA 새로운 라인이 사용될 때마다 0이 제 IOTA은, 자동으로 하나의 값에 추가 될 때문에 A = 0, B = 1, C 2가 축약 될 수 = 다음과 같다 :

const (
    a = iota
    b
    c
)

이오타 사용

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

위의 운영 결과의 예는 다음과 같습니다 :

0 1 2 ha ha 100 100 7 8

흥미로운 예 오타를 봐 :

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

위의 운영 결과의 예는 다음과 같습니다 :

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

오타가 자동으로 1을 추가하는 0이고, 그래서 = 1 << 0, J = 3 << 1 (<< 왼쪽 시프트 의미 대표), 즉 : 난 = 1, J = 6이 아무 문제 없습니다, 키 K 및 리터, 모양의 출력, K = 3 << 2, L = 3 << 3.