Should methods be declared on T or *T?

Source: Should methods be declared on T or *T

Digest:
In short, I think that you should prefer declaring methods on *T unless you have a strong reason to do otherwise.


1. We say T but that is just a place holder for a type that you declare.
2. This rule is recursive, taking the address of a variable of type *T returns a result of type **T.
3. This is why nobody can declare methods on primitive types like int.
4. Methods in Go are just syntactic sugar for a function which passes the receiver as the first formal parameter.
5. If the method does not mutates its receiver, does it need to be a method.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值