加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Golang中方法的接受类型与调用类型

发布时间:2020-12-16 18:21:58 所属栏目:大数据 来源:网络整理
导读:举个例子: a1) Distance方法的接收器参数是 Point 类型a2) ScaleBy方法的接收器参数是* Point 类型b1) 变量p是 Point 类型b2) 变量pptr是* Point 类型 下面有三种情形: 1.b1调用a1,b2调用b2 p.Distance(q)pptr.ScaleBy (2 ) 2.b1调用a2(存在隐式转换) p

举个例子:

a1) Distance方法的接收器参数是Point类型
a2) ScaleBy方法的接收器参数是*Point类型
b1) 变量p是Point类型
b2) 变量pptr是*Point类型

下面有三种情形:
1.b1调用a1,b2调用b2

p.Distance(q)
pptr.ScaleBy(2)

2.b1调用a2(存在隐式转换)

p.ScaleBy(2) // implicit (&p).ScaleBy(2)
             // 注意p一定是一个变量,不然不会有&p操作

3.b2调用a1(存在隐私转换)

pptr.Distance(q) // implicit (*pptr).Distance(q)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读