Sobes.tech
Junior

Como se chama a estrutura em Go que copia os dados ao passar?

sobes.tech IA

Resposta da IA

Em Go, a estrutura ao passar sempre copia seus dados. Não há um nome especial para a estrutura que se comporta exatamente assim, isso é uma propriedade fundamental das estruturas.

package main

import "fmt"

type Point struct {
	X, Y int
}

func modifyPoint(p Point) {
	// Modificamos a cópia p, não a estrutura original
	p.X = 10
	p.Y = 20
	fmt.Printf("Dentro da função: %v\n", p)
}

func main() {
	pt := Point{X: 1, Y: 2}
	fmt.Printf("Antes de chamar a função: %v\n", pt)
	modifyPoint(pt)
	fmt.Printf("Depois de chamar a função: %v\n", pt) // pt permaneceu sem alterações
}