Como Definir Ponteiros na Linguagem Golang

in golang •  6 years ago  (edited)

Ponteiros são variáveis que armazenam o endereço da memória usada por uma certa informação.

Por exemplo, vamos definir uma variável para armazenar um valor inteiro:

var a int = 37

A variável a armazena o valor 37, um inteiro, na memória.

Para criar um ponteiro que aponta para o endereço da variável a, usamos a seguinte notação:

var p *int = &a

Na expressão acima, declaramos um ponteiro com nome p. O tipo de dados é um ponteiro para um int, por isso tem um asterisco antes de int. No lado direito do sinal de igual, temos o ampersand & para obter o endereço da variável a.

Com o ponteiro p acima, podemos acessar o valor apontado por ele usando o operador de desreferenciação (dereferencing), que é um asterisco antes do nome da variável:

fmt.Printf("O valor apontado por p é %d\n", *p)
// => O valor apontado por p é 37

Podemos também modificar o valor referenciado pelo ponteiro fazendo uma atribuição da seguinte maneira:

*p = 62

Ao imprimir o valor de a, veremos que ele mudou:

fmt.Println(a) // => 62

Para aprender mais sobre como definir ponteiros na linguagem Golang, assista à aula do NBK Mundo Tech:

Nos vemos lá!

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Obrigado por postar! Esse comentário é o novo bot que dará upvote 5% para todos os posts que usam a tag #pt. Ainda não votou em mim como witness? Clique aqui e dê o seu voto! É rápido!