0
這個錯誤消息究竟是在抱怨什麼?'BinaryNode`2 [N,T]'上的GenericArguments [1],'T'違反了類型參數'T'的約束。
我試圖創建一個節點類,它可以保存一個值並指向其他節點,並且可以擴展爲在每個節點中嵌入更多信息。遞歸模板雖然給我一些問題。
public class ColoredNode<T> : Node<ColoredNode<T>, T>
where T : IComparable
{
public ConsoleColor Color;
}
public class BaseNode<T> : Node<BaseNode<T>, T>
where T : IComparable
{
}
abstract public class Node<N, T>
where N : Node<N, T>, new()
where T : IComparable
{
public N Parent;
public N Child;
public T Value;
}
GenericArguments [1], 'T',在 'Node`2 [N,T]' 違反類型參數 'T' 的約束。
我其實並沒有看到這段代碼有什麼問題。錯誤在這裏抱怨什麼?還是當你在代碼的不同部分實例化它? –
也許如果你透露你的'BinaryNode'類定義,你可以得到幫助。 –
@TimothyShields我將BinaryNode中的所有內容都重命名爲Node,使問題變得更加簡單。所有的代碼都存在。 – Curtor