Sobes.tech
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{}, където стойността не заема допълнителна памет.