Junior — Middle
Какъв е размерът на структура от данни без елементи или данни вътре?
sobes.tech AI
Отговор от AI
В Go структура без полета (празна структура) заема 0 байта памет. Това е особеност на езика: празната структура не съдържа данни, затова размерът й е нулев.
Пример:
package main
import (
"fmt"
"unsafe"
)
type Empty struct{}
func main() {
var e Empty
fmt.Println(unsafe.Sizeof(e)) // Ще изведе 0
}
Това е полезно, например, за създаване на множество (set) с помощта на карта map[Empty]struct{}, където стойността не заема допълнителна памет.