문자열을 텍스트로 구문 분석 할 때 구문 분석 할 수없는 문자열로 인해 시간이 0이되고 계속 수행되기를 원합니다. (ineffassign)golang에서 오류를 재설정하는 것은 나쁜 습관입니까?
실수를 범하는 헛된 할당 :passwordLastUsed, err = time.Parse(time.RFC3339, record[lastUsed])
if err != nil {
err = nil
passwordLastUsed = time.Time{}
}
이 코드는 지저분한 외모와 'ineffassign'린터은 'ERR = 전무'문이 반환
경고
이것을 처리하는 더 좋은 방법이 있습니까? 아니면 방금 린터를 무시해야합니까?
아마도 당신이 전무로 설정 한 후, 나중에'err' 변수를 사용하지 않는 것이 말하는, 그래서 당신은 단지뿐만 아니라 그것을 nil을 확인하지 않을 수 있습니다, 만에 – xs0
을 passwordLastUsed 세트 어떤 컨텍스트를 추가하면, 'err'은이 스 니펫이 들어있는 함수의 명명 된 반환 값입니다. 함수의 다른 곳에서이 함수를 사용하고 호출하는 함수가 0이 아닌 값을 반환하지 않으면 즉시 반환합니다. – jonhadfield
다른 위치에서도 사용할 수 있지만 다시 확인하기 전에 무조건 설정하고 있습니다. 그렇지 않으면 경고 메시지가 표시되지 않습니다. – Flimzy