правильный ответ на этот вопрос далева, следующее - лишь расширенное объяснение концепции, которую Маркус, возможно, не полностью понял
Простопроясните некоторые моменты, о которых говорилось в комментариях, что вы на самом деле передаете делегату для выполнения сортировки.
Следующий фрагмент
List<Item> b = a.OrderBy(item => item.X);
Похоже на создание статическогоФункция сравнения, которая сортирует, сравнивая поле (или свойство) X
объекта типа Item
и передавая эту функцию сравнения в функцию сортировки, как вы могли бы это сделать в C ++.
The OrderBy (...) это очень короткий и удобный способ сделать это.