Estoy tratando de convertir una enumeración de código C++ a código C#, y estoy teniendo problemas para entenderlo. El código C++ es:Reproducción de código de desplazamiento de bit de C++ a C#
enum FOO {
FOO_1 = 0,
FOO_2,
// etc
}
#define MASK(x) ((1 << 16) | (x))
enum DISP
{
DISP_1 = MASK(FOO_1),
DISP_2 = MASK(FOO_2),
// etc
}
Lo que no entiendo es lo MÁSCARA está haciendo, y cómo puede emular la funcionalidad en C#, o entender lo que está haciendo y establecer el DISP enumeración manualmente sin ella.
No estoy seguro de lo que estoy diciendo tiene sentido, pero eso es de esperar cuando no estoy del todo seguro de lo que estoy viendo.
Debe leer acerca de cambios (<<) y o (|) los operadores en C++ para que pueda entender lo que está pasando. – coredump
¡Definitivamente lo haré! – Wint