0
行き先が新しいです。私はHTTPをやっている場合、要求はこの聞かせます:Golang - エラーをチェックして操作を延期する正しい順序は何ですか?
resp, err := http.Get("https://www.google.com")
を今私はerr
がnilとdefer resp.Body.Close()
であるかどうかを確認する必要があります。これら2つの操作を実行する正しい順序は何ですか?
クローズコールが延期されているため違いがないと思います。最初にエラーをチェックしてからクローズを延期するのは慣用的なようです。 – Sridhar
@Sridhar:これは間違った**です!もしerr!= nilならばresp == nilとします。この場合、DeferされたBody.Close()はパニックに陥ります。 – Volker
あなたは正しいです。ただ試しました。明らかに私はすべての私のエラーを直ちに処理するため、これを見いだすことはありません:) – Sridhar