我学习泛型。 Richter LinkedList。我有关于类初始化的问题。 加:有2个构造函数。先用null。 我们如何用1个构造函数做到这一点?泛型params里氏代码
internal sealed class Node<T>
{
public T m_data;
public Node<T> m_next;
public Node(T data) : this(data, null)
{
}
public Node(T data, Node<T> next)
{
m_data = data; m_next = next;
}
public override String ToString()
{
return m_data.ToString() + ((m_next != null) ? m_next.ToString() : String.Empty);
}
}
什么是?
public Node(T data) : this(data, null)
{
}
尤其(T data)
为什么我能做什么?
public Node(T data, Node<T> next)
{
m_data = data; m_next = null;
}
但我不能做
public Node(T data, Node<T> next)
{
m_data = null; m_next = next;
}
构造函数接受通用约束'T'的实例。快速举例,类型节点将在构造函数中使用'string'。 –
Igor
您的Node类的构造函数需要一个名为'data'类型的参数T –
有2个构造函数。先用null。我们如何用1个构造函数做到这一点? – ifooi