Sobes.tech
Middle

Wat is een pointer en hoeveel geheugen neemt hij in beslag?

sobes.tech AI

Antwoord van AI

Een pointer in Go is een variabele die het adres van een andere variabele in het geheugen opslaat. Het stelt je in staat om direct met de gegevens op dat adres te werken, wat handig is voor optimalisatie en het doorgeven van grote structuren zonder kopiëren.

De grootte van een pointer hangt af van de architectuur van het systeem:

  • Op 32-bit systemen neemt een pointer 4 bytes in beslag.
  • Op 64-bit systemen — 8 bytes.

Voorbeeld van het gebruik van een pointer in Go:

package main
import "fmt"

func main() {
    var a int = 42
    var p *int = &a // p is een pointer naar a
    fmt.Println("Waarde van a:", a)
    fmt.Println("Adres van a:", p)
    *p = 100 // waarde wijzigen via de pointer
    fmt.Println("Nieuwe waarde van a:", a)
}