为什么go中的receiver name不推荐使用this或者self

为什么go中的receiver name不推荐使用this或者self

为什么go中的receiver name不推荐使用this或者self

在 Go 中,receiver 是指作为方法参数的接收器,它可以是值类型或指针类型。在定义 receiver 时,不推荐使用 this 或 self 作为 receiver 的名称。

在其他语言中,如 Java 和 C++,this 或 self 用于表示当前实例或对象的引用,但是在 Go 中,this 和 self 是无效的标识符,不能用于变量名或方法名。

虽然在 Go 中可以使用 this 或 self 作为变量名或方法名,但是这并不符合 Go 代码的风格和惯例。根据 Go 代码规范,建议使用 receiver 类型的第一个字母作为 receiver 名称,比如:

type myType struct{}

// value receiver
func (m myType) myMethod() {
    // ...
}

// pointer receiver
func (m *myType) myMethod2() {
    // ...
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
嗨,我是波波。曾经创业,有收获也有损失。我积累了丰富教学与编程经验,期待和你互动和进步! 公众号:上海PHP自学中心
wangchunbo
讨论数量: 2

我觉得用this/self挺好的, abcd什么的变来变去有点烦

2年前 评论

我也是用this 。感觉这种只是叫什么。。go也没有this的关键字

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
司机 @ 某医疗行业
文章
308
粉丝
352
喜欢
565
收藏
1131
排名:61
访问:12.6 万
私信
所有博文
社区赞助商