Sobes.tech
Junior — Middle

Ce dimensiune are o structură de date fără elemente sau date în interior?

sobes.tech AI

Răspuns de la AI

În Go, o structură fără câmpuri (structură goală) ocupă 0 bytes de memorie. Este o caracteristică a limbajului: o structură goală nu conține date, așa că dimensiunea sa este zero.

Exemplu:

package main

import (
	"fmt"
	"unsafe"
)

type Empty struct{}

func main() {
	var e Empty
	fmt.Println(unsafe.Sizeof(e)) // Va afișa 0
}

Acest lucru este util, de exemplu, pentru a crea un set folosind un map map[Empty]struct{}, unde valoarea nu ocupă memorie suplimentară.