O que há de novo no C# 7.0 - Literais binários
Além dos números decimais e hexadecimais, no C# 7.0 é possível escrever usando notação binária:
class BinaryLiteral
{
public static void Example()
{
int myValue = 0b1010;
}
}
Facilitando muito a criação de Flags Enum:
public enum MyFlagsEnumCSharp60
{
None = 0,
Sunday = 1,
Monday = 2,
Tuesday = 4,
Wednesday = 8,
Thursday = 16,
Friday = 32,
Saturday = 64
}
public enum MyFlagsEnum2CSharp60
{
None = 0,
Sunday = 1, // 1
Monday = 1 << 1, // 2
Tuesday = 1 << 2, // 4
Wednesday = 1 << 3, // 8
Thursday = 1 << 4, // 16
Friday = 1 << 5, // 32
Saturday = 1 << 6, // 64
}
public enum MyFlagsEnumCSharp70
{
None = 0b00000000,
Sunday = 0b00000001,
Monday = 0b00000010,
Tuesday = 0b00000100,
Wednesday = 0b00001000,
Thursday = 0b00010000,
Friday = 0b00100000,
Saturday = 0b01000000
}