Sobes.tech
Junior — Middle

Μπορεί η κατασκευή Range να χρησιμοποιηθεί κατά τη δημιουργία καναλιών σε μια γλώσσα προγραμματισμού;

sobes.tech AI

Απάντηση από AI

Στη Go, η κατασκευή range χρησιμοποιείται συχνά για επανάληψη σε κανάλια, επιτρέποντας την λήψη τιμών από το κανάλι μέχρι να κλείσει.

Παράδειγμα χρήσης του range με κανάλι:

ch := make(chan int)
func() {
    for i := 0; i < 5; i++ {
        ch <- i
    }
    close(ch)
}()

for val := range ch {
    fmt.Println(val)
}

Εδώ, το range χρησιμοποιείται για ανάγνωση από το κανάλι ch μέχρι να κλείσει. Με αυτόν τον τρόπο, η κατασκευή range δεν "δημιουργεί" κανάλια, αλλά χρησιμοποιείται για εύκολη ανάγνωση από αυτά.