Sobes.tech
Junior — Middle

Šta označava parametar koji se nalazi pre imena metode u deklaraciji funkcije?

sobes.tech АИ

Одговор од АИ

Parametar koji se navodi pre imena metode u deklaraciji funkcije u Go jeziku naziva se prijemnik (receiver). On povezuje funkciju sa određenim tipom, pretvarajući je u metodu tog tipa.

Prijemnik može biti vrednost ili pokazivač na tip i omogućava pozivanje metode putem instance tog tipa.

Primer:

type Point struct {
    X, Y int
}

// Metoda sa prijemnikom tipa Point
func (p Point) Move(dx, dy int) Point {
    p.X += dx
    p.Y += dy
    return p
}

// Metoda sa pokazivačem prijemnika
func (p *Point) MoveInPlace(dx, dy int) {
    p.X += dx
    p.Y += dy
}

Ovde, (p Point) i (p *Point) su prijemnici koji omogućavaju pozivanje metoda na objektima tipa Point.