我只阅读了这个站点上的一个主题,我看到了一些我不太理解的不寻常的类定义。谁能解释一下这个定义是什么意思?
public class Node<T> where T : class
{
public Node<T> Next { get; set; }
public T Value { get; set; }
public Node(T value)
{
Next = null;
Value = value;
}
}
特别是它说的地方
public class Node<T> where T : class
最佳答案
这是一个带有泛型参数 T 的泛型类定义,并且 T 必须是类(引用类型)的约束。
它本质上意味着,当你创建一个 Node 实例时,你可以做
new Node<String>(someStringVar)
但是你做不到
new Node<int>(someIntVar)
关于c# - 了解一些 C# 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5851102/