Sobes.tech
Junior — Middle

Qual é o tamanho de uma estrutura de dados sem elementos ou dados internos?

sobes.tech IA

Resposta da IA

No Go, uma estrutura sem campos (estrutura vazia) ocupa 0 bytes de memória. É uma característica da linguagem: uma estrutura vazia não contém dados, portanto, seu tamanho é zero.

Exemplo:

package main

import (
	"fmt"
	"unsafe"
)

type Empty struct{}

func main() {
	var e Empty
	fmt.Println(unsafe.Sizeof(e)) // Vai imprimir 0
}

Isto é útil, por exemplo, para criar um conjunto (set) usando um mapa map[Empty]struct{}, onde o valor não ocupa memória adicional.