Sobes.tech
Junior — Middle

Jaki rozmiar ma struktura danych bez żadnych elementów lub danych wewnątrz?

sobes.tech AI

Odpowiedź od AI

W Go struktura bez pól (pusta struktura) zajmuje 0 bajtów pamięci. To cecha języka: pusta struktura nie zawiera danych, więc jej rozmiar jest zerowy.

Przykład:

package main

import (
	"fmt"
	"unsafe"
)

type Empty struct{}

func main() {
	var e Empty
	fmt.Println(unsafe.Sizeof(e)) // Wyświetli 0
}

To jest przydatne, na przykład, do tworzenia zbioru (set) za pomocą mapy map[Empty]struct{}, gdzie wartość nie zajmuje dodatkowej pamięci.