2013-08-01 4 views
1

Golang에서 오류가 발생하면 0 값이 사용됩니다. 예를 들어, map [int] 문자열에 키가 없으면 빈 문자열이 반환됩니다.Golang - 제로 값 바이트 배열

url을 받아 http 요청시받은 json 문자열을 반환하는 함수를 작성하고 있습니다. 오류가 null이 아닌 경우 본문의 반환 값을 0 값 바이트 배열로 설정하고 싶습니다. 바이트 배열은 다른 데이터 유형으로 형변환 될 수 있기 때문에이를 어떻게 설정해야하는지 알 수 없습니다. 어쩌면 컨텍스트 의존적일까요? 반환 된 값이 문자열이기를 기대하므로 빈 문자열로 설정해야합니다.

답변

3

아니요, 0 값은 대역 내 오류 값으로 관용적으로 사용되지 않습니다. 지도가 존재하지 않는 키에 0 값을 반환하지만 필요 하나, 대체 구문에 의해 존재에 대한 테스트가

v, ok := m[k] 

를 사용하여 여러 반환 값은 값을 반환 할 수있는 그가 (자주 사용) 기능의 동시에 신호.

간단한 (true/false, ok/not ok ...) 조건을 알리려면 부울 값을 사용하십시오.

오류 조건을 알리려면 error 입력 값을 사용하십시오. 등

은 BTW : 이동] 프로그래밍 언어는 캐스트가 없습니다. 그것은 전환을 가지고 있으며 캐스트와 동일하지 않습니다.