Sobes.tech
Junior — Middle

V jakých situacích je lepší používat typ výčtu s vlajkami pro bitové kombinace?

sobes.tech AI

Odpověď od AI

Typ enum s příznaky (bitové příznaky) v C# se používá k reprezentaci sady booleovských možností nebo stavů, které lze kombinovat dohromady. Tento přístup je užitečný, když je třeba uložit několik nezávislých vlastností do jednoho čísla.

Použití:

  • Když je potřeba efektivně uložit a přenést více logických příznaků.
  • Když jsou možné různé kombinace stavů a je třeba rychle ověřit přítomnost konkrétního příznaku pomocí bitových operací.
  • Pro konfiguraci parametrů, například režimů práce, přístupových práv, konfiguračních možností.

Příklad:

[Flags]
enum FileAccess {
    Read = 1,       // 0001
    Write = 2,      // 0010
    Execute = 4,    // 0100
    Delete = 8      // 1000
}

FileAccess permissions = FileAccess.Read | FileAccess.Write;

bool canWrite = (permissions & FileAccess.Write) == FileAccess.Write; // true

Zde lze kombinovat práva a kontrolovat je pomocí bitových operací. Tento přístup šetří paměť a zjednodušuje logiku práce s více možnostmi.