Я почти уверен, что вы не определили свой класс SingleLinkNode
как имеющий параметр общего типа. Таким образом, попытка объявить это с одним провалом.
В сообщении об ошибке указывается, что SingleLinkNode
является вложенным классом, поэтому я подозреваю, что может происходить то, что вы объявляете члены SingleLinkNode
типа T
, фактически не объявляя T
как универсальный параметр для SingleLinkNode
. Вам все еще нужно сделать это, если вы хотите, чтобы SingleLinkNode
был универсальным, но если нет, то вы можете просто использовать класс как SingleLinkNode
вместо SingleLinkNode<T>
.
Пример того, что я имею в виду:
public class Generic<T> where T : class
{
private class Node
{
public T data; // T will be of the type use to construct Generic<T>
}
private Node myNode; // No need for Node<T>
}
Если вы делаете хотите, чтобы ваш вложенный класс был универсальным, тогда это будет работать:
public class Generic<T> where T : class
{
private class Node<U>
{
public U data; // U can be anything
}
private Node<T> myNode; // U will be of type T
}