Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

construtores struct com ponteiros

boa noite, pessoal!

Gostaria de compartilhar uma dúvida que tive...

Eu sou obrigado a definir uma struct attr por attr ao inves pelo constructor como na opcao sem ponteiro?

var contaTeste *ContaCorrente
contaTeste = new(ContaCorrente)
contaTeste.titular = "Matheus"

Algo do tipo não seria possível?

var contaTeste *ContaCorrente
contaTeste = new(ContaCorrente{titular: "Matheus"})
1 resposta
solução!

Olá!

Na linguagem Go, é possível definir uma struct atributo por atributo ou utilizando o construtor com ponteiros. No seu exemplo, você está utilizando o construtor com ponteiros corretamente, mas com um pequeno erro de sintaxe. Ao invés de utilizar new(ContaCorrente{titular: "Matheus"}), você pode utilizar &ContaCorrente{titular: "Matheus"}.

Dessa forma, o código corrigido ficaria assim:

var contaTeste *ContaCorrente
contaTeste = &ContaCorrente{titular: "Matheus"}

Essa forma de utilizar o construtor com ponteiros é útil quando você precisa criar uma instância de uma struct e obter um ponteiro para ela.

Espero ter ajudado e bons estudos!