C # decimal.compare против> или < - PullRequest
       13

C # decimal.compare против> или <

7 голосов
/ 02 декабря 2008

Какая польза от использования decimal.compare по сравнению с использованием> или <для сравнения с переменными? </p>

Ответы [ 3 ]

5 голосов
/ 02 декабря 2008

С одной стороны, это действительно упрощает создание экземпляра делегата Comparison<decimal>:

Comparison<decimal> foo = decimal.Compare;

Это удобно для перехода к вещам, которые принимают произвольные делегаты сравнения.

Это также может быть полезно, если вы используете язык, который не поддерживает перегруженные операторы. По этой причине рекомендуется не раскрывать функциональность, поддерживаемую операторами * .

4 голосов
/ 02 декабря 2008

Decimal.Compare возвращает число со знаком, указывающее относительные значения двух десятичных значений. Типичное использование это для сортировки.

Операторы, такие как>,> =, <возвращают логическое значение. </p>

Так что они используются в различных сценариях.

1 голос
/ 02 декабря 2008

В CLI десятичный тип не является нативным типом, как Int32, String и другие. Я предполагаю, что C # использует сравнение за кулисами для реализации операторов сравнения.

Кроме того, вы можете передать Compare в качестве параметра в процедуру сортировки, не создавая делегата, уменьшая уровни вложенности методов внутри сортировки.

Это пара вещей с моей головы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...