El compilador debe eliminar el código muerto si la condición depende de una constante de tiempo de compilación, por lo que técnicamente no estaría de más mantenerlo. Sin embargo, prefiero comentarlo, ya que esto mejora la legibilidad del código.
Si desea poder cambiar rápidamente entre dos alternativas de código, puede usar la siguiente construcción de comentarios conveniente:
//*
alternative 1 is active
/*/
alternative 2 is commented out
//*/
si elimina solo el primero /en la primera línea de comentario, se convierte en:
/*
alternative 1 is commented out
/*/
alternative 2 is active
//*/
Con esto, puede cambiar entre las alternativas simplemente agregando o eliminando una sola /en el código.
Esto puede parecer un poco extraño al principio, pero una vez que te acostumbres, lo reconocerás fácilmente como algún tipo de patrón.
Incluso puede encadenar esto y así cambiar varios bloques a la vez con un solo carácter:
//*
first block of code for alternative 1
/*/
first block of code for alternative 2
/*/
second block of code for alternative 1
/*/
second block of code for alternative 2
//*/
No lo usaría de esta manera, pero funciona.