06. 상수
06. 상수
✅ 1. 상수 선언
- 상수로 사용 가능한 타입
- 불리언, 룬(rune), 정수, 실수, 복소수, 문자열
const
키워드를 이용하여 선언한다1
const ConstValue int = 10
- 첫 글자가 대문자이고 함수 외부에 있는 상수는 패키지 외부로 공개된다
- 상수는 한 번 선언되면 값을 바꿀 수 없으며, 대입문의 좌변에 올 수 없다
✅ 2. 타입 없는 상수
- 상수 선언 시 타입을 명시하지 않을 수 있다
- 타입 없는 상수는 변수에 복사될 때 타입이 정해진다
1
2
3
4
5
6
7
8
9
const (
PI = 3.14 // 타입 없는 상수
FloatPI float64 = 3.14 // float64 타입 상수
)
func main() {
var a int = PI * 100 // 정상 결과 : 314
var b int = FloatPI * 100 // 타입 오류 발생
}
✅ 3. 상수와 리터럴
- 리터럴이란 고정된 값, 값 자체로 쓰인 문구
- Go 언어에서 상수는 리터럴과 동일하게 취급된다
상수는 컴파일 시점에 리터럴로 변환되어 실행 파일에 쓰인다
1 2 3 4 5
const PI = 3.14 var a int = PI * 100 // 컴파일 타임에 아래와 같이 변환 var a int = 314
- 리터럴로 전환되어 실행 파일에 값 형태로 쓰이기 때문에 상수의 메모리 주소에도 접근할 수 없다
This post is licensed under CC BY 4.0 by the author.