¿Hay alguna razón esto no es código redundante?
-
27-09-2019 - |
Pregunta
Me encontré con este código en alguna base de código existente:
double rad = ComputeCurviness();
double off = Math.Abs(rad);
if (rad < 0) off = -off;
Parece ser, básicamente, sólo haciendo off
igual a rad
. Las variables se utilizan indistintamente adelante en el código. ¿Hay alguna razón para dejar este código en?
Solución
Si rad
es -0.0, off
será 0,0. Habría que revisar el código para ver si esto realmente hacer una diferencia. Los dos son equivalentes cuando se trata de cálculos y comparaciones, pero es negativo -0.0, que se puede detectar si se esfuerza lo suficiente.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow