函数作为参数的话,类型不需要规定好么
来源:7-2 函数式编程例一

拍案惊起
2018-09-04
f的类型是intGen,
printFileContent接收的参数类型是io.Reader
正常来说,这一块了类型限制不应该是inGen么
写回答
1回答
-
这里正是我想要说明的Go语言对接口的理解。io.Reader是一个接口,规定了Read方法。任何东西只要有这样一个Read方法,就说它实现了io.Reader。我们的intGen这个类型也同样实现了这个Read方法(虽然它不是其它语言中“正统”的对象,只是一个函数类型)。所以他可以当做printFileContent的参数。
同学可以试试把Read方法改一改,就会编译错误。
012018-09-09
相似问题