Sobes.tech
Junior — Middle

Milyen funkciót tölt be a `*` operátor a Go nyelvben, különösen a mutatók esetében?

sobes.tech MI

Válasz az MI-től

A Go nyelvben az * operátor pointerekkel való munkára szolgál, és két fő funkciót lát el:

  1. Pointer dereferálása — a pointer által mutatott érték lekérése.

  2. Pointer deklarálása — amikor egy változót *-vel deklarálunk, akkor azt jelzi, hogy az egy típusra mutató pointer.

Példa:

var a int = 10
var p *int = &a  // p egy pointer a-ra
fmt.Println(*p)   // kiírja 10 — a pointer által mutatott érték

*p = 20           // a értékének módosítása pointeren keresztül
fmt.Println(a)    // kiírja 20

Így az * lehetővé teszi a címekkel és memóriaértékekkel való munkát, alacsony szintű kontrollt biztosítva az adatok felett.