Sobes.tech
Назад к вопросам
Junior — Middle
77

Какой объем занимает структура данных без каких-либо элементов или данных внутри?

Ответ от нейросети

sobes.tech AI

В Go структура без полей (empty struct) занимает 0 байт памяти. Это особенность языка: пустая структура не содержит данных, поэтому её размер равен нулю.

Пример:

package main

import (
	"fmt"
	"unsafe"
)

type Empty struct{}

func main() {
	var e Empty
	fmt.Println(unsafe.Sizeof(e)) // Выведет 0
}

Это полезно, например, для создания множества (set) с помощью карты map[Empty]struct{}, где значение не занимает дополнительной памяти.