Go 无法将类型chan[]字符串)用作类型[]chan字符串? 主程序包 输入“fmt” func x(foo[]字符串,cz chan字符串){ 对于i:=范围foo{ cz
阅读错误消息Go 无法将类型chan[]字符串)用作类型[]chan字符串? 主程序包 输入“fmt” func x(foo[]字符串,cz chan字符串){ 对于i:=范围foo{ cz,go,channel,goroutine,Go,Channel,Goroutine,阅读错误消息 输入chan[]字符串 type[]chan字符串 他们是不同的 游乐场:检查函数参数,你要求的是一个[]chan字符串,这是一个通道片段,不是chan[]字符串。是的,我搞错了lol。谢谢……但现在:无效操作:@user10032371你似乎是对的。我更新了代码,它的工作方式是减去“质量”,没有发送给func x,y。 package main import "fmt" func x(foo []string, cz chan string) { for i := r
输入chan[]字符串
type[]chan字符串
他们是不同的
游乐场:检查函数参数,你要求的是一个[]chan字符串,这是一个通道片段,不是chan[]字符串。是的,我搞错了lol。谢谢……但现在:无效操作:@user10032371你似乎是对的。我更新了代码,它的工作方式是减去“质量”,没有发送给func x,y。
package main
import "fmt"
func x(foo []string, cz chan string) {
for i := range foo {
cz <- foo[i]
}
}
func y(foo []string, cz chan string) {
for i := range foo {
cz <- foo[i]
}
}
type cz struct {
cSlice []chan string
}
func main() {
var quality []string = make([]string, 2)
quality[0] = "hello"
quality[1] = "world"
//name := []string{"mother", "earth"}
var channel cz
for i := range channel.cSlice {
go x(quality, channel.cSlice[i])
go y(quality, channel.cSlice[i])
x, y := <-channel.cSlice[i], <-channel.cSlice[i]
fmt.Println(x, y)
}
}
cannot use channel.cSlice (type chan []string) as type []chan string in argument to x
cannot use channel.cSlice (type chan []string) as type []chan string in argument to y