【发布时间】:2015-05-27 13:14:17
【问题描述】:
假设我有一个类型type T int,我想定义一个逻辑来操作这个类型。
我应该使用什么抽象以及何时使用?
-
在该类型上定义一个方法:
func (T t) someLogic() { // ... } -
定义一个函数:
func somelogic(T t) { // ... }
【问题讨论】:
-
第二个版本(函数)没有返回值基本上是无意义的。否则:这取决于。
-
@Volker:这并不常见,但这种形式有时对指针成员、切片或映射很有用;例如
func (p IntSlice) Sort()在排序包中
标签: go