C# 泛型 : What does IComparable<Nullable<T>> mean?

标签 c# .net generics

在下面的代码块中:

public struct Nullable<T> : IFormattable, IComparable, INullable,
       IComparable<Nullable<T>>
{
       // ...
}

我知道这个结构正在实现这些接口(interface),但我没有得到 IComparable<Nullable<T>>部分。什么意思?

最佳答案

这意味着你可以比较任何Nullable<T>Nullable<T> 的另一个实例(对于相同的 T )以强类型方式。它将有一个像这样的方法:

public int CompareTo(Nullable<T> other)

注意正常的 Nullable<T> struct 没有任何这些接口(interface)。我个人认为 另一个 Nullable<T> 会有些困惑struct 在这个地方踢来踢去……我建议,如果您有能力这样做,您可以将此 struct 重命名为其他名称。 T 也很奇怪不受限于使用 where T : struct约束...

关于C# 泛型 : What does IComparable<Nullable<T>> mean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6241806/

相关文章:

c# - 为什么 "TextWrapping"在插入TextBox时自动添加到XAML

c# - "Script-Migration"可以在 .NET Entity Framework Core 中创建数据库吗?

java - Java 中的多个有界泛型

Swift 泛型、约束和 KeyPaths

java - 无法解决此 Java 泛型编译时警告

C# Xml 反序列化错误

c# - C# 6 中方法重载解析的重大变化 - 解释?

c# - ColdFusion - cfusion_encrypt() 和 cfusion_decrypt() - C# 替代方案

c# - 如何将 lambda 表达式传递给 WCF 服务?

c# - 如何打印特定的物理尺寸