>  기사  >  백엔드 개발  >  Go에서 상수 맵을 선언할 수 없는 이유는 무엇입니까?

Go에서 상수 맵을 선언할 수 없는 이유는 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-12 21:40:03426검색

Why Can't We Declare Constant Maps in Go?

Go의 상수 맵: 허용되지 않는 이유

Go에서 다음과 같이 상수 맵을 선언하면 오류가 발생할 수 있습니다.

const (
    running = map[string]string{
        "one": "ONE",
        "two": "TWO",
    }
)

이것은 Go에서 왜 const 맵을 허용하지 않는가라는 질문을 제기합니다.

공식 Go 언어 사양에 따르면 유효한 상수 값에는 숫자 유형(룬, 정수, 부동 소수점)이 포함됩니다. , 가상), 문자열, 부울 및 특정 내장 함수 결과. 그러나 맵, 배열 및 슬라이스는 숫자 유형으로 간주되지 않습니다.

따라서 숫자 유형, 문자열 및 부울은 상수로 정의할 수 있지만 맵과 같은 복합 데이터 구조는 정의할 수 없습니다. 상수에는 불변이고 컴파일 타임에 알려진 값을 할당해야 하는데, 이는 맵이 갖지 않는 특성이기 때문입니다.

위 내용은 Go에서 상수 맵을 선언할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.