0
点赞
收藏
分享

微信扫一扫

go语言 记录奇怪的写法--慢慢品味

东林梁 2022-09-09 阅读 213


package main

import "fmt"

type TestFunc func(*Bar, string)

type Bar struct {
Name string
Alias string
}

func (t *Bar) SetName(name string) {
t.Name = name
fmt.Println("Name:", t.Name)
}

func (t *Bar) SetAlias(alias string) {
t.Alias = alias
fmt.Println("Alias:", t.Alias)
}

type Foo struct {
f TestFunc
}

func main() {
foo := new(Foo)
bar := new(Bar)
foo.f = (*Bar).SetName
foo.f(bar, "LeBron Raymone James")
foo.f = (*Bar).SetAlias
foo.f(bar, "King")
}


举报

相关推荐

0 条评论