不知道怎么去命名了,突然go的调用方式类似php的匿名函数
package main
import "fmt"
type T struct {
int64
}
func (t *T) echo (s string){
fmt.Println(t)
fmt.Println(s)
}
func main(){
data := &T{12}
data.echo("test")
}
运行结果:
go run test.go
&{12}
test
php的匿名函数
$a = 1;
$b = 2;
$c = function ($x, $y) use ($a, $b){
echo $a."-". $b . "-" .$x . "-" .$y;
};
$c("a", "b");
运行结果:
php test.php
1-2-a-b
是不是有很像的感觉 ? 它们可以接收参数,也可以直接use已有参数,已有参数和传入参数都可以被函数使用,匿名函数在php里使用的并不太多,在Js里可能相对多一些,在Go里这么看来是很频繁的用到哈、初涉Go,一点小惊喜……*……