为何可以这样传递参数
<p>初学,有个疑惑的地方,例如</p>
<pre><code>file, err := os.Open("/path/to/file.txt")
scanner := bufio.NewScanner(file)
</code></pre>
<p>这里 file 获传入 bufio.NewScanner ,但是文档写的是</p>
<pre><code>func Open(name string) (*File, error)
func NewScanner(r io.Reader) *Scanner
</code></pre>
<p>这里接受的是参数是 r io.Reader ,为何 file 可以传过去,是否是因为 file 实现了接口导致的,我在文档里面也没有看到有提及,如果是这样在哪里可以看到哪些参数实现了哪些接口呢,不能要用的时候一个个去断言吧?</p>
收藏(0)
分享
相关标签:
注意:本文归作者所有,未经作者允许,不得转载