我是围棋新手。我试图了解ioutil .ReadAll(r Reader,Capacity int64)方法内部发生了什么。在此方法内部,有如下一行:
buf := bytes.NewBuffer(make([]byte, 0, capacity))
但是的问题是字节包内有一个NewBuffer方法,仅带有参数,如:
func NewBuffer(buf []byte) *Buffer
我一次又一次地搜索了bytes软件包文档,但是找不到带有3参数的NewBuffer方法。
那么实际上是从哪里调用NewBuffer(make([] byte,int,int64))方法?
最佳答案
make([]byte, 0, capacity)
返回一个新的 byte slice ([]byte
),该 byte slice 初始化为长度0和容量capacity
。
换句话说,它可以帮助您在多行中查看它:
capacity := 100 // or whatever
var myBytes []byte = make([]byte, 0, capacity)
buf := bytes.NewBuffer(myBytes)
关于go - 在go lang字节包中找不到NewBuffer([] bytes,int,int64)方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35962922/