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 demap[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")
}