Форум программистов, компьютерный форум CyberForum.ru

Двунаправленный кольцевой список (удаление узлов) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить количество знаков препинания в тексте http://www.cyberforum.ru/cpp-beginners/thread863538.html
Дан текст. Определить, сколько символов знаков препинания в нем (точка, запятая, двоеточие, тире, и пр.).
C++ Определить количество букв в предложении Дано предложение. Определить, сколько раз встречается буква let в данном предложении (let задается с клавиатуры). http://www.cyberforum.ru/cpp-beginners/thread863536.html
Посчитать количество символов в слове C++
Дано название футбольной команды. Подсчитайте, сколько в нем символов.
Удаление списка C++
Программа добавляющая заявки на авиабилеты. Есть функции добавления и вывода всех заявок, помогите сделать удаление ВСЕХ заявок. //#include "stdafx.h" #include <cstdio> #include <conio.h> #include <clocale> #include <windows.h> #include <stdlib.h> #include <iostream>
C++ Слова с похожими буквами http://www.cyberforum.ru/cpp-beginners/thread863516.html
Как выводи слова, которые имеют разные буквы? То есть, допустим есть слова: афина, авто, ручка, мел. Как сделать так, чтобы алгоритм выводил слово, которое имеет уникальные буквы( в данном случае это - мел)?
C++ Ввод символов в массив Как ввести в массив 30 символов, которые будут вводить без пробелов и переносов строк, то есть строку вида: 123456789...n , нужно привести к виду: char mass mass={1}{2}{3}{4}{5}{6}{7}{8}{9}...{n} подробнее

Показать сообщение отдельно
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
13.05.2013, 16:09     Двунаправленный кольцевой список (удаление узлов)
Помогите с удалением узлов из списка(~List). Не знаю как правильно удалять

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <iostream>
 
typedef int dataList;
 
class List {
public:
    List();
    List(dataList d);
    ~List();
    void addNode(dataList d);
    void showList();
private:
    dataList data;
    List *next;
    List *prev;
} *Head = NULL, *Temp = NULL;
 
List::List() { }
 
List::List(dataList d)
    : data(d), next(NULL), prev(NULL) { }
 
void List::addNode(dataList d) {
    List *node = new List(d);
    if(!Head) {
        Head = node;
        Temp = node;
    } else {
        node->next = Head;
        node->prev = Temp;
        Temp->next = node;
        Temp = node;
    }
    
}
 
void List::showList() {
    List *show = Head;
    while(true) {
        std::cout << show->data << ' ';
        show = show->next;
        if(show == Head)
            break;
    }
}
 
List::~List() {
    while(Head != NULL) {
        List *tmp = Head;
        delete tmp;
        Head = Head->next;
    }
}
 
int main() {
    List list;
    list.addNode(3);    
    list.addNode(4);
    list.addNode(5);
    list.showList();
    
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru