gpt4 book ai didi

go - 查找返回特定类型的函数

转载 作者:IT王子 更新时间:2023-10-29 01:33:36 26 4
gpt4 key购买 nike

也许这是一个愚蠢的问题,但是有没有办法找到返回特定类型的所有函数(在标准库或 GOPATH 中)?

例如,有许多函数将 io.Writer 作为参数。现在我想知道如何创建一个 io.Writer 并且有很多方法可以做到这一点。但是,我怎样才能轻松找到所有方法而不用猜测包并查看所有方法来找到返回 io.Writer(或我想要的任何其他类型)的方法呢?

编辑:我应该扩展我的问题以找到实现特定接口(interface)的类型。坚持使用 io.Writer 示例(对于原始问题来说,这无疑是一个糟糕的示例)最好有一种方法来找到实现 Writer 接口(interface)的任何类型,因为这些类型将是需要的函数的有效参数一个 io.Writer,从而在类型为接口(interface)时回答原始问题。

最佳答案

也许不是最好的方法,但看看官方顶部的搜索字段 golang.org网站。如果您搜索 “Writer”:

http://golang.org/search?q=Writer

你会得到很多结果,按类别分组,例如

另请注意 io.Writer是一个接口(interface),我们都知道 Go 是如何处理接口(interface)的:在实现接口(interface)时,没有声明意图,如果声明了接口(interface)定义的方法,则类型隐式实现了接口(interface)。这意味着您将无法找到许多创建和返回 io.Writer 的示例,因为类型可能被完全不同地命名并且仍然是 io.Writer.

如果您寻找非接口(interface)类型,例如 bytes.Buffer,事情会变得容易一些.

同样在声明包类型的文档中,Index 部分将包的函数和方法按类型分组,因此您将找到 的函数和方法em>相同 包,返回您在 Index 部分的条目/链接下查找的类型。

另请注意,您可以在 godoc.org 检查软件包的依赖关系。 .例如,您可以看到哪些包导入了 io 包,这可能是寻找更多示例的良好起点(如果是 package io,这会让人筋疲力尽,因为它是如此一般,以至于现在 23410 packages import it )。

关于go - 查找返回特定类型的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29554369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com