Junior — Middle
Τι σημαίνει η παράμετρος που βρίσκεται πριν από το όνομα της μεθόδου στην δήλωση της συνάρτησης;
sobes.tech AI
Απάντηση από AI
Ο παράμετρος που καθορίζεται πριν από το όνομα της μεθόδου στην δήλωση της συνάρτησης σε Go ονομάζεται δέκτης (receiver). Συνδέει τη συνάρτηση με έναν συγκεκριμένο τύπο, μετατρέποντάς την σε μέθοδο αυτού του τύπου.
Ο δέκτης μπορεί να είναι μια τιμή ή ένας δείκτης σε έναν τύπο και επιτρέπει την κλήση της μεθόδου μέσω ενός στιγμιότυπου αυτού του τύπου.
Παράδειγμα:
type Point struct {
X, Y int
}
// Μέθοδος με δέκτη τύπου Point
func (p Point) Move(dx, dy int) Point {
p.X += dx
p.Y += dy
return p
}
// Μέθοδος με δείκτη δέκτη
func (p *Point) MoveInPlace(dx, dy int) {
p.X += dx
p.Y += dy
}
Εδώ, (p Point) και (p *Point) είναι δέκτες που επιτρέπουν την κλήση μεθόδων σε αντικείμενα του τύπου Point.