go 语言 io.Writer 接口 Posted on 2021-06-04 In golang io.Writer接口实现要求开始以为只是实现了Write方法就行,看了源码发现还有很多细节上的要求 // src/io/io.go type Writer interface { Write(p []byte) (n int, err error) } 1.要把 p写入实现类型的底层数据中 2.要返回实际写入的长度和在写入时遇到的错误,如果实际写入的长度小于len(p),返回的err必须是非nil的 3. p不能在方法内部被修改,即使临时性的也不可以 4. 不能对p进行保存