троичный оператор против Math.Abs ​​в c# - PullRequest
0 голосов
/ 27 апреля 2020

Что лучше по производительности? троичный ?: или Math.Abs

У меня есть оператор для запуска сотни раз в алгоритме, где мне нужно положительный отличается между двумя точками, и я также знаю когда DPoint будет больше, чем CPoint У меня есть флаг, чтобы идентифицировать это. Таким образом, я могу узнать из флага isUpSidePattern, что результат будет отрицательным или положительным, поэтому мне интересно, что использовать для троичной функции с лучшей производительностью или функции Math.Abs?

Math.Abs ​​

double diff = Math.Abs(CPoint - DPoint)  // CPoint and DPoint are `double` type

троичный

double diff = isUpSidePattern ? CPoint - DPoint:DPoint - CPoint;  // CPoint and DPoint are `double` type

или Любое предложение будет оценено.

...