golang方法的参数问题,比如下面的示例代码:
问题:
1、foo()方法的参数a和main()函数里面的a有关系吗?
2、foo()方法里面的a好像没有被使用到,它表示什么意思?
golang方法的参数问题,比如下面的示例代码:
问题:
1、foo()方法的参数a和main()函数里面的a有关系吗?
2、foo()方法里面的a好像没有被使用到,它表示什么意思?
在 golang 里面,type 可以类比面向对象语言里面 类;该 类型 的变量可以类比面向对象语言的 对象。
main 中的 a 就是你实例化的对象;foo 中的 a 就相当于 this(即当前对象),你可以想象一个场景:如果你想在 foo 中使用 Name 怎么办?
你还不理解的话继续在下面评论里面追问吧,我这里可能描述的不好,因为我暂时没想好怎么描述
func (a A) foo(){}
这是个语法糖,翻译过来就是
func foo(a A){
}
这里的a 可以是任何名字,一般我们用this,使用指针传参。
func(this *A) foo(){}
2 回答2.7k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
2 回答1.8k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
1 回答1.5k 阅读✓ 已解决
2 回答1.4k 阅读
1 回答1.9k 阅读