type使用

来源:7-1 函数式编程

伟大的五年

2020-01-11

type iAdder func(int) (int, iAdder)

老师 这种写法相当于go语言中的 别名? iAdder 其实就是后面 函数的别名,简称。使用iAddr 来代替函数更方便一点?

写回答

1回答

ccmouse

2020-01-12

别名还是定义只是不同的说法。从语言本身来说,这个的确可以认为是别名,可以用iAddr来代替这个长的函数写法。但从业务逻辑角度,我们这个函数非常重要,所以我们要把它做成一个特别的类型,名称叫iAddr

0
2
ccmouse
回复
蹭你七时年
type就是定义自定义类型的。当然它可以定义结构体,接口,以及函数类型。 这里我定义了一个自定义函数类型。所有符合func(int) (int, iAdder)的函数都认为是iAdder类型。但是在type这里不需要也不可以有实现。 func iAdder(int) (int, iAdder){} 这里只是一个具体的函数的实现。可以认为是上述iAdder类型的一个实例。 就好像其它语言中,“类”是一个类型,“类”可以有很多实例一样。
2021-06-27
共2条回复

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1909 问题

查看课程