2017-03-01 3 views
0

왜 ... 왜이 오류가 발생합니까? 확장자를 허용하기 위해 맵을 재 할당했기 때문에 아니면 컴파일러 파서가 이러한 경우를 처리하지 못하기 때문에 그렇습니까?const에서 맵을 선언하고 채울 수없는 이유는 무엇입니까?

const (
     paths = &map[string]*map[string]string { 
      Smith: { 
       "theFather": "John", 
      }, 
     } 
     paths["Smith"]["theSon"] = paths["Smith"]["theFather"] + " Junior" 
) 

답변

2

Constants는 이유 상수를라고 : 일정 : 당신이 그들을 그냥있을 것으로 기대합니다.

유형은 해당 유형의 값에 대해 수행 할 수있는 작업을 정의합니다. Go의 map 유형이 일정하지 않으므로 생성 후 키 - 값 쌍을 변경할 수 있으므로 map 개의 상수를 가질 수 없습니다. 상수 : 스펙에 정의 된 상수 값을 선택할 수

귀하의 "팔레트"부동 소수점 상수이 룬은 상수 부울 상수, 정수 상수가 있습니다

을, 복잡한 상수문자열 상수. Declare a constant array

해결 방법은 간단하다 :

관련 질문을 참조는 변수가 아닌 상수로 선언합니다.

+0

내가 확인을 해주셔서 감사합니다. 감사합니다. – MrBouh