Я думаю, у вас есть проблема с дизайном (в дополнение к тому, на что указал Джаббервоки). LinkedList::DisplayLinkedList
является функцией-членом, и название подразумевает, что она печатает содержимое списка. Например,
list.DisplayLinkedList();
будет означать, что он печатает содержимое list
.
Тогда почему он принимает какой-либо параметр? Это функция-член, что означает, что она вызывается для экземпляра LinkedList
, и вы можете получить доступ к членам этого экземпляра, используя this->
. Передача какого-либо параметра для печати любого другого списка, кроме текущего, просто не имеет большого смысла. Я предлагаю следующий подход:
void LinkedList::DisplayLinkedList()
{
Node *p = this->headNode;
cout << "Displaying the list" << p << endl;
while(p != NULL)
{
cout << "Node at " << p << "\n"; // prints the address
cout << " value " << p->data << "\n";
cout << " next: " << p->data << "\n"; // p->nextNode maybe?
p = p->nextNode;
}
}
Для хорошей практики не спам endl
;)