Sobes.tech
Junior — Middle

Jaký je hlavní účel prázdné datové struktury?

sobes.tech AI

Odpověď od AI

Prázdná struktura v Go (struct{}) neobsahuje žádná pole a zabírá 0 bajtů paměti. Hlavním účelem této struktury je sloužit jako marker nebo vlajka, když je důležité pouze to, že hodnota existuje, nikoli její obsah. Například ji často používají jako hodnotu v map, aby implementovali množinu (set), kde klíče jsou prvky množiny a hodnoty jsou prázdné struktury, aby se šetřila paměť.

Příklad použití prázdné struktury pro množinu:

set := make(map[string]struct{})
set["jablko"] = struct{}{}
set["banán"] = struct{}{}

if _, exists := set["jablko"]; exists {
    fmt.Println("Jablko je v množině")
}

Tímto způsobem prázdná struktura pomáhá efektivně reprezentovat kolekce bez duplicitních dat.