Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 不通过反射, 通过类型断言判断一个类型是否含有某函数
- package main
- import (
- "fmt"
- )
- type A int
- type B int
- func (b B) M(x int) string {
- return fmt.Sprint(b, ": ", x)
- }
- func check(v interface{}) bool {
- _, has := v.(interface{M(int) string}) // 匿名接口
- return has
- }
- func main() {
- var a A = 123
- var b B = 789
- fmt.Println(check(a), check(b)) // false true
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement