Wykonując ostatnie ćwiczenie Tour of Go , zdecydowałem, że potrzebuję kolejki ( string
, int
) par. To dość proste:
type job struct {
url string
depth int
}
queue := make(chan job)
queue <- job{url, depth}
Ale to dało mi do myślenia: czy w Go są wbudowane typy danych typu para / krotka? Istnieje wsparcie dla zwracania wielu wartości z funkcji, ale AFAICT, wyprodukowane krotki wielu wartości nie są obywatelami pierwszej klasy w systemie typów Go. Czy tak jest?
Jeśli chodzi o część „czego próbowałeś”, oczywista składnia (z punktu widzenia programisty Pythona)
queue := make(chan (string, int))
nie zadziałało.