Вы изменяете contents
, который, как мне кажется, должен указывать на заголовок вашего списка.
contents = contents -> getNext();
Когда вы выполняете итерацию до тех пор, пока contents
не станет нулевым (в add()
), а затем вызовете все, что считает, что contents
не равно нулю, потому что count>0
у вас сбой.
Первый вызов add()
: счетчик равен 0, вы создаете LinearNode *
и правильно устанавливаете contents
.
Второй вызов add()
: число равно 1, вы сканируете, выполняя contents = contents->getNext()
- заканчивая contents==null
. Затем вы, так как (found == 0)
и (count != 0)
создаете новый узел, и вызываете contents->setPrevious()