"런타임 오류: Nil Map의 항목 할당" 이해
Go에 내장된 맵 데이터 구조를 활용하려고 할 때 다음과 같은 문제가 발생할 수 있습니다. 두려운 "런타임 오류: nil 맵의 항목 할당"이 발생합니다. 이 오류는 nil(또는 초기화되지 않은) 맵에 존재하지 않는 키에 값을 할당하려는 시도에서 발생합니다.
특별한 경우 맵에서 YAML 파일을 생성하려고 합니다. 키는 "uid"를 나타내며 각 값은 개인에 대한 정보를 포함하는 맵입니다. 그러나 코드에서 런타임 오류가 발생했습니다.
해결 방법: 내부 맵 초기화
이 문제는 내부 맵("uid")이 먼저 초기화되지 않았기 때문에 발생합니다. 키에 값을 할당해 보세요(예: "kasi", "remya" 및 "nandan"). 이 문제를 해결하려면 for 루프 앞에 다음 줄을 추가하면 됩니다.
1 |
|
이 줄은 내부 맵을 초기화하고 이를 외부 맵(m)의 "uid" 키와 연결합니다. 이제 내부 맵 내의 키에 값을 안전하게 할당할 수 있습니다.
1 |
|
세련된 코드
수정된 코드는 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
이번 수정으로 더 이상 "런타임 오류: nil 맵의 항목 할당"이 발생하지 않습니다. 귀하의 코드는 원하는 구조의 YAML 파일을 성공적으로 생성합니다.
위 내용은 Go에서 '런타임 오류: Nil Map의 항목 할당'이 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!