Sobes.tech
Junior

Come si chiama la struttura in Go che copia i dati durante il passaggio?

sobes.tech AI

Risposta dell'AI

In Go, la struttura al passaggio copia sempre i propri dati. Non esiste un nome speciale per la struttura che si comporta esattamente così, questa è una proprietà fondamentale delle strutture.

package main

import "fmt"

type Point struct {
	X, Y int
}

func modifyPoint(p Point) {
	// Modifichiamo la copia p, non la struttura originale
	p.X = 10
	p.Y = 20
	fmt.Printf("Dentro la funzione: %v\n", p)
}

func main() {
	pt := Point{X: 1, Y: 2}
	fmt.Printf("Prima della chiamata: %v\n", pt)
	modifyPoint(pt)
	fmt.Printf("Dopo la chiamata: %v\n", pt) // pt rimane invariato
}