为了账号安全,请及时绑定邮箱和手机立即绑定

golang中如何区分包名和对象名

golang中如何区分包名和对象名

Go
凤凰求蛊 2021-07-30 12:38:53
package mainimport (......"fmt"......)func main() {        ......    xxx:=new(xxx)    fmt.Println("1")        ......    xxx.Println()//confusing}type xxx struct{    one int    two string}func (yyy *xxx) Println(){    fmt.Println("2")    yyy.Print(3)//confusing too}func (this *xxx) Print(a int){    fmt.Println(a)}这个问题是追我的,什么是最快的方法来判断它是包名还是对象名,如上面的代码,在main func中,fmt被称为包名,因为大家都知道。但是什么时候来到xxx.Println(),你怎么知道是包名还是对象名,假设main函数有很多行代码,很难确定对象“xxx”的声明,还有,导入的包很多,你很难搜索 import() 的每一行来查看包中是否列出了“xxx”,你怎么知道 xxx 是什么?和func Println一样,你直接到yyy.Print(3),func声明中的接收者很难找到,因为它在屏幕外,你怎么知道yyy是最快的方式,yyy可能是包名称和接收器名称。如果没有这样更简单的方法,那是否意味着我应该始终首先搜索 import() 列出的包,然后将屏幕滚动到 func 声明的最开头以查找接收者名称是什么,然后我就可以知道了这是什么?听起来太花时间了!
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信