Junior — Middle
Limbajul Go suportă posibilitatea de a efectua operații aritmetice cu pointeri?
sobes.tech AI
Răspuns de la AI
În limbajul Go, operațiile aritmetice cu pointeri nu sunt suportate direct, ca în C sau C++. Go permite efectuarea aritmeticii pointerilor doar în cazuri limitate, de exemplu, atunci când se lucrează cu slice-uri și array-uri prin indexare. Acest lucru este făcut pentru a crește siguranța și a preveni erorile de memorie. De exemplu, nu poți adăuga pur și simplu un număr la un pointer pentru a obține elementul următor, dar poți folosi indexarea slice-ului:
arr := []int{10, 20, 30}
ptr := &arr[0]
// Nu se poate face ptr + 1, dar se poate accesa arr[1]
fmt.Println(arr[1]) // 20
Astfel, Go limitează aritmetica pointerilor pentru a evita operațiuni nesigure.