Trong khi thực hiện bài tập cuối cùng của Tour of Go , tôi quyết định rằng tôi cần một hàng đợi gồm ( string
, int
) các cặp. Điều đó đủ dễ dàng:
type job struct {
url string
depth int
}
queue := make(chan job)
queue <- job{url, depth}
Nhưng điều này khiến tôi phải suy nghĩ: có kiểu dữ liệu cặp / tuple được tích hợp sẵn trong Go không? Có hỗ trợ trả về nhiều giá trị từ một hàm, nhưng AFAICT, các bộ giá trị được tạo ra không phải là công dân hạng nhất trong hệ thống loại của cờ vây. Đó là trường hợp?
Đối với phần "bạn đã thử những gì", cú pháp rõ ràng (từ POV của lập trình viên Python)
queue := make(chan (string, int))
không hoạt động.