Go suporta ponteiros, permitindo passar referências a valores dentro do programa. |
|
package main |
|
import "fmt" |
|
Será apresentado como ponteiros funcionam em contraste a valores,
com duas funcões: |
func zeroval(ival int) { ival = 0 } |
|
func zeroptr(iptr *int) { *iptr = 0 } |
func main() { i := 1 fmt.Println("initial:", i) |
|
zeroval(i) fmt.Println("zeroval:", i) |
|
A sintaxe |
zeroptr(&i) fmt.Println("zeroptr:", i) |
Ponteiros também podem ser impressos. |
fmt.Println("pointer:", &i) } |
|
$ go run pointers.go initial: 1 zeroval: 1 zeroptr: 0 pointer: 0x42131100 |
Próximo exemplo: Strings and Runes.