У меня есть пользовательский LinkedList здесь (с помощью VS2013):методы в пользовательской LinkedList
LinkedList.cs:
class LinkedList
{
public int Count { get; set; }
public Node Head { get; private set; }
public LinkedList()
{
head = null; // creates an empty linked list
count = 0;
}
public void AddFront(int n)
{
Node newNode = new Node(n);
newNode.Link = head;
head = newNode;
count++;
}
public void DeleteFront()
{
if (count > 0)
{
Node temp = head;
head = temp.Link;
temp = null;
count--;
}
}
}
И я пытаюсь добавить пользовательский метод в него, называемый AddMusicCDToFront (MusicCD CD). У меня уже есть класс MusicCD.cs (который имеет все основные вещи, а также конструктор):
public class MusicCD
{
public int Id { get; set; }
public string SingerName{ get; set; }
public string AlbumName { get; set; }
}
Когда я пытаюсь добавить в метод, называемый AddMusicCDToFront (MusicCD кд) к классу LinkedList как так:
public void AddMusicCDToFront(MusicCD cd)
{
Node music = new Node(300);
music.Link = cd;
}
VS2013 выдает эту ошибку:
Cannot implicitly convert type 'MusicCD' to 'Node'
у меня есть ощущение узла не должно быть сделано таким образом ... но я просто не могу достаточно поместить мою голову, почему. Вот в Node.cs:
class Node
{
public int Data{ get; set; }
internal Node Link { get; set; }
}
Кроме того, как я пройти связный список и распечатать данные каждого узла?
Вы используете свойство «Ссылка» как ** как ** контейнер данных, так и ссылку на следующий узел. Вы должны использовать два свойства. –
Должен ли я использовать данные и ссылку? – Ventus