Sobes.tech
Junior — Middle

Em que casos se aplica uma estrutura vazia na programação?

sobes.tech IA

Resposta da IA

No Go, a estrutura vazia struct{} é uma estrutura sem campos que ocupa 0 bytes de memória. É usada em casos onde é necessário armazenar informações sobre a presença de algo, mas sem dados adicionais.

Exemplos de uso:

  • Conjuntos (set): para armazenar elementos únicos, pode-se usar map[Type]struct{} em vez de map[Type]bool, o que economiza memória.
  • Sinais e notificações: uma estrutura vazia pode servir como uma bandeira ou marcador.

Exemplo de conjunto em Go:

set := make(map[string]struct{})
set["apple"] = struct{}{}
set["banana"] = struct{}{}

if _, exists := set["apple"]; exists {
    fmt.Println("maçã está no conjunto")
}