在查看我同事的代码时,我发现 returnerr已被忽略,尽管我们通常不会这样做:
b := new(strings.Builder)
b.WriteString("Hello, World!") // ignore err
的源代码WriteString声明它可能会返回错误,但实际上它永远不会(总是返回nil错误值):
// WriteString appends the contents of s to b's buffer.
// It returns the length of s and a nil error.
func (b *Builder) WriteString(s string) (int, error) {
b.copyCheck()
b.buf = append(b.buf, s...)
return len(s), nil
}
如果有的话,删除错误返回会出现什么问题,如下所示?
func (b *Builder) WriteString(s string) int {
b.copyCheck()
b.buf = append(b.buf, s...)
return len(s)
}
慕码人2483693
qq_笑_17
相关分类