2015-04-25 5 views
-3

У меня есть динамический список, где a - текущее место, a-> prev - предыдущий элемент, a-> следующий - следующий элемент, мне нужно удалить один элемент списка (и установить предыдущий/следующий соседних элементов друг к другу)Удаление элемента из динамического списка

if(a->va == var && a->pa == pav){ 
     a -> prev -> next = a -> next; 
     a -> next -> prev = a -> prev; 
     delete a; 
    } 
+2

Необходимо описать вашу проблему лучше. * Это не работает, как это * не является полезным диагнозом. –

+0

Мне нужно удалить только 1 элемент из списка – user2921071

+3

@ user2921071 Проконсультируйтесь с [Как задать хороший вопрос?] (Https://stackoverflow.com/help/how-to-ask) и [Как создать Минимальный, полный и проверенный пример] (https://stackoverflow.com/help/mcve) –

ответ

0

Вы должны обращаться с кромками.

Если найденный элемент является первым в списке, a -> prev является NULL.

Аналогичным образом, если последний, a -> next является NULL.

+0

Как вы знаете, что нет узла-дозорника? –

+0

Спасибо, но он все еще не работает – user2921071

+0

Я не ... но это выглядит для меня хорошим предположением. –

Смежные вопросы