dtvam48220 2017-09-12 17:28
浏览 70
已采纳

为什么要在Go中使用空白标识符?

I'm finding the use of the blank identifier a little hard to understand. I've looked at effective go and understand most of the use cases they describe but then looking at a tutorial I came across this in a route handler function:

var person Person
_ = json.NewDecoder(req.Body).Decode(&person)

in the first line we create a new empty variable of type Person (a struct previously defined) and then I assume that

  • &person is passing the person var in by reference,
  • to be filled with data by the Decode function

this function then goes on to perform a few more tasks before encoding and returning a json response.

Why do we need have the decode assigned to a blank identifier? Couldn't we just run json.NewDecoder(req.Body).Decode(&person) ? if we can't, why not?

  • 写回答

1条回答 默认 最新

  • dtv8189 2017-09-12 17:38
    关注

    I'm assuming you're learning golang and asking because you can't identify why this example used this practice.

    As @JimB mentioned in comments, the example writer didn't need to do this they're simply ignoring the Error return.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?