这个问题来自这个小奇迹:Comparer<T>.Default
。我想知道作者在该行中写了什么:
如果您要比较的类型已经实现
IComparable<T>
,或者该类型是System.Nullable<T>
T 实现的位置,则System.Collections.Generic 命名空间IComparable
中有一个类,它公开了一个名为 Default 的属性,它将创建一个单例,表示以下项的默认比较器那种。Comparer<T>
例如:
我有一堂课:
class Foo : IComparable<Foo> { ... }
public class FooComparer : IComparer<Foo> { ... }
比较器类实现为public abstract class Comparer<T> : IComparer, IComparer<T>
. 我的问题是 Default 属性的整体工作原理,它的作用以及它是如何工作的?
谢谢