如何使用 reflect 包获取 chan 的类型

How to get type of chan with reflect package

假设我有一个围棋选手:

var c = make(chan int)

如何发现它是一个使用以下频道的频道:

var isChannel = reflect.ValueOf(c).Kind() == reflect.Chan

但是有谁知道我如何确定频道的类型,在这种情况下 int

使用Elem获取频道类型:

var isChannel = reflect.ValueOf(c).Kind() == reflect.Chan
channelType := reflect.ValueOf(c).Type().Elem()

对于 int 频道,channelType 将是 int