Pointer သည် value တည်ရှိတဲ့ memory address ကိုသိမ်းထားတာပါ။ Go မှာ pointer ကို data copy မလုပ်ချင်တဲ့အခါ၊ function ထဲမှာ original value ပြောင်းချင်တဲ့အခါ အသုံးများပါတယ်။
go
package main
import "fmt"
func updateName(name *string) {
*name = "ThutaTech"
}
func main() {
brand := "Old Name"
updateName(&brand)
fmt.Println(brand)
}&brand က brand variable ရဲ့ address ကိုပေးတာပါ။ *name = "ThutaTech" က pointer ညွှန်ထားတဲ့ original value ကိုပြောင်းတာဖြစ်ပါတယ်။
You should see
ThutaTechInfo
Go မှာ C/C++ လို pointer arithmetic မရှိပါ။ ဒါကြောင့် pointer ကိုအသုံးပြုနိုင်ပေမဲ့ memory-level mistake အချို့ကိုကာကွယ်ပေးပါတယ်။