Skip to content

Instantly share code, notes, and snippets.

@ThiagoBarradas
Last active May 2, 2020 04:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ThiagoBarradas/1f8be4392dc623fd7b3b2cc42aeb2303 to your computer and use it in GitHub Desktop.
Save ThiagoBarradas/1f8be4392dc623fd7b3b2cc42aeb2303 to your computer and use it in GitHub Desktop.
// declaração errada com valores padrões
[Flags]
public enum Cor
{
Vermelho, // valor padrão 0
Verde, // valor padrão 1
Azul, // valor padrão 2
Amarelo // valor padrão 3
}
// declaração errada com atribuição de valores não sequênciais na base 2^x
[Flags]
public enum Cor
{
Vermelho = 1,
Verde = 2,
Azul = 3,
Amarelo = 4
}
// declaração correta
[Flags]
public enum Cor
{
Vermelho = 1,
Verde = 2,
Azul = 4,
Amarelo = 8
}
// declaração correta, usando bit-shifting
[Flags]
public enum Cor
{
None = 0,
Vermelho = 1 << 0,
Verde = 1 << 1,
Azul = 1 << 2,
Amarelo = 1 << 3
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment