Sobes.tech
Junior

Kako se zove struktura u Go koja kopira podatke prilikom prenosa?

sobes.tech АИ

Одговор од АИ

U Go, struktura pri prenosu uvek kopira svoje podatke. Ne postoji posebno ime za strukturu koja se ponaša tačno tako, to je osnovna osobina struktura.

package main

import "fmt"

type Point struct {
	X, Y int
}

func modifyPoint(p Point) {
	// Menjamo kopiju p, a ne originalnu strukturu
	p.X = 10
	p.Y = 20
	fmt.Printf("Unutar funkcije: %v\n", p)
}

func main() {
	pt := Point{X: 1, Y: 2}
	fmt.Printf("Pre poziva funkcije: %v\n", pt)
	modifyPoint(pt)
	fmt.Printf("Posle poziva funkcije: %v\n", pt) // pt je ostao nepromenjen
}