错误:无法将类型"System.Collections.Generic.LinkedListNode<Edge>"隐式转换为<T>"Edge<T>"



我正在使用以下代码来获取linkedlist工作列表的第一个元素,但我在第2行上遇到错误

Cannot implicitly convert type System.Collections.Generic.LinkedListNode<Edge<T>>' to 'Edge<T>'

  1. LinkedList<Edge<T>> worklist = new LinkedList<Edge<T>>();
  2. Edge<T> curr = worklist.First;

根据.fir的定义,以上代码应起作用。请帮助我解决这个问题。

类边缘的定义在下面给出

private sealed class Edge<T>
{
            public  T start;
            public  T end;
    /// <summary>
    /// Constructs a new edge between the two indicated endpoints.
    /// </summary>
    /// <param name="start"> The edge's starting point. </param>
    /// <param name="end"> The edge's endpoint. </param>
    public Edge(T start, T end)
    {
        this.start = start;
        this.end = end;
    }
}

使用以下:

Edge<T> curr = worklist.First.Value;

worklist.First返回LinkedListNode<Edge<T>>。您需要访问第一个节点的值才能获得Edge<T>

最新更新