Por que a conversão int com valor de enum inválido NÃO gera exceção?
Se eu tiver um enum assim:
enum Beer
{
Bud = 10,
Stella = 20,
Unknown
}
Por que não lança uma exceção ao transmitir umint
que está fora desses valores para um tipo deBeer
?
Por exemplo, o código a seguir não gera uma exceção, gera '50' para o console:
int i = 50;
var b = (Beer) i;
Console.WriteLine(b.ToString());
Acho isso estranho ... alguém pode esclarecer?