Go 언어에서는 const 키워드를 사용하여 변경되지 않는 데이터를 저장하는 데 사용되는 상수를 정의할 수 있으며, 단일 상수를 정의하는 구문은 "const 상수 이름 = 상수 값"이며 정의하는 구문은 다음과 같습니다. 여러 개의 상수를 일괄적으로 처리하는 방법은 "const (const name 1) =상수값 1 상수 이름 2 =상수값 2...)"입니다. 상수는 함수 내부에 정의된 경우에도 컴파일 타임에 생성되며 부울, 숫자(정수, 부동 소수점 및 복소수) 및 문자열 유형만 가능합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, GO 버전 1.18, Dell G3 컴퓨터.
const 키워드는 Go 언어에서 상수를 정의하는 데 사용됩니다.
상수는 변경되지 않는 데이터를 저장하는 데 사용됩니다. 상수는 함수 내부에 정의되어 있더라도 컴파일 타임에 생성되며 부울, 숫자(정수, 부동 소수점 및 복소수) 및 문자열 유형만 가능합니다. 컴파일 시간 제한으로 인해 상수를 정의하는 식은 컴파일러에서 평가할 수 있는 상수 식이어야 합니다.
상수의 정의 형식은 변수의 선언 구문과 유사합니다. const 이름 [유형] = 값(예:
const pi = 3.14159 // 相当于 math.Pi 的近似值
Go 언어에서는 유형 지정자 [유형]을 생략할 수 있습니다. 왜냐하면 컴파일러가 기반을 결정할 수 있기 때문입니다. 변수 값에 대해 해당 유형을 추론합니다.
명시적 유형 정의: const b string = "abc"
const b string = "abc"
隐式类型定义: const b = "abc"
const b = "abc"
const c1 = 2/3
const c2 = getNumber() // 引发构建错误: getNumber() 用做值변수 선언과 동일하며 여러 상수를 일괄적으로 선언할 수 있습니다.
const ( e = 2.7182818 pi = 3.1415926 )모든 상수 연산은 컴파일 타임에 완료될 수 있지만 이는 그렇지 않습니다. 런타임 작업을 줄일 뿐 아니라 다른 코드의 컴파일 및 최적화도 용이하게 합니다. 피연산자가 상수인 경우 0으로 정수 나누기, 범위를 벗어난 문자열 인덱스, 무효화를 유발하는 모든 런타임 오류가 컴파일 시간에 발견될 수도 있습니다. 부동소수점 연산 등 모든 산술 연산, 논리 연산 및 상수 간 비교 연산의 결과도 상수입니다. 상수에 대한 유형 변환 연산이나 다음 함수 호출은 상수 결과를 반환합니다: len, cap, real, imag, complex 및 unsafe.Sizeof. 해당 값은 컴파일 타임에 결정되므로 상수는 유형의 일부일 수 있습니다. 예를 들어 배열 유형의 길이를 지정하는 데 사용됩니다.
const IPv4Len = 4 // parseIPv4 解析一个 IPv4 地址 (d.d.d.d). func parseIPv4(s string) IP { var p [IPv4Len]byte // ... }상수 선언에는 유형과 값도 포함될 수 있지만 if 명시적으로 유형을 지정하지 않으면 오른쪽 표현식에서 유형이 유추됩니다. 다음 코드에서 time.Duration은 명명된 유형이고 기본 유형은 int64이며 time.Minute는 해당 유형의 상수입니다. 아래에 선언된 두 상수는 모두 time.Duration 타입이며, 타입 정보는 %T 매개변수를 통해 출력할 수 있습니다:
const noDelay time.Duration = 0 const timeout = 5 * time.Minute fmt.Printf("%T %[1]v\n", noDelay) // "time.Duration 0" fmt.Printf("%T %[1]v\n", timeout) // "time.Duration 5m0s" fmt.Printf("%T %[1]v\n", time.Minute) // "time.Duration 1m0s"일괄 선언된 상수인 경우, 첫 번째는 생략 가능하며, 초기화 식을 생략한다는 것은 이전 상수의 초기화 식을 사용하는 것을 의미하며 해당 상수 유형도 동일합니다. 예:
const ( a = 1 b c = 2 d ) fmt.Println(a, b, c, d) // "1 1 2 2"【관련 권장 사항: Go 비디오 튜토리얼, 🎜프로그래밍 교육🎜】🎜
위 내용은 Go 언어에서 const를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!