Sobes.tech
Junior

Cum se numește structura în Go care copiază datele la transmitere?

sobes.tech AI

Răspuns de la AI

În Go, structura la transmitere întotdeauna copiază datele sale. Nu există un nume special pentru structura care se comportă exact așa, aceasta fiind o proprietate fundamentală a structurilor.

package main

import "fmt"

type Point struct {
	X, Y int
}

func modifyPoint(p Point) {
	// Modificăm copia p, nu structura originală
	p.X = 10
	p.Y = 20
	fmt.Printf("În interiorul funcției: %v\n", p)
}

func main() {
	pt := Point{X: 1, Y: 2}
	fmt.Printf("Înainte de apelul funcției: %v\n", pt)
	modifyPoint(pt)
	fmt.Printf("După apelul funcției: %v\n", pt) // pt a rămas neschimbat
}