Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ BISON, освобождение памяти при синтаксической ошибке. https://www.cyberforum.ru/ cpp/ thread288565.html
Здравствуйте. При работе с BISON, как освободить память выделенную под возвращаемые продукциями "объекты" в случае синтаксической ошибки? Все мануалы облазил (штук 5-6) не нашел ничего кроме описания...
C++ Ресайз картинки, хранимой в grayscale-матрице
Здравствуйте, уважаемые! Возникла следующая задача: Есть множество двухмерных массивов произвольных размеров, хранящих в себе информацию о яркости точек изображения (по сути - просто grayscale...
C++ Сервер
Помогите, я хочу создать сервер Властелин колец онлайн. Что для этого нужно и как это сделать, на каком языке писать, и в какой среде Добавлено через 27 минут Помогите, я хочу создать сервер...
C++ Нужен исходник алгоритма SHA Нужен исходник этого алгоритма. Ссылки на библиотеки мне не нужны, т.к. я ничего не понял как делать. Мне нужно просто - вызвал функцию, передал туда строку и функция вернула мне результат.... https://www.cyberforum.ru/ cpp/ thread280674.html
C++ Вывести изображение на экран (ручками) https://www.cyberforum.ru/ cpp/ thread280526.html
Есть например картинка не важно в каком формате (самые легкие для считывание это наверно tga png bmp) каким образом надо залесть в этот файл с картинкой чтобы считать цвет пикселей и собственно их...
Запуск программ по расписанию C++
Нужно реализовать программу на Microsoft Visual C++ которая бы запускала программы по заданному времени. Я её реализовал под Win32 Aplication. Расписание время и путь программ я указывал в файл ...
Как выделить определенный диапазон цвета RGB на картинке bmp? C++
всем доброго времени суток!помогите,пожалуйста, в написании кода.есть картинка bmp. Надо разложить ее на цвета rgb. определить диапазон оттенка красного и выделить его на изображении...
C++ Vendor Id Добрый день, уважаемые. Назрел у меня один вопрос, прошу прощения если уже его обсуждали, поиск по форуму ничего не дал. Вопрос в следующем: у меня есть буква диска, мне надо узнать его vid.... https://www.cyberforum.ru/ cpp/ thread280040.html
C++ Unreal Development Kit https://www.cyberforum.ru/ cpp/ thread279631.html
Здравствуйте. Где можно достать уроки подробное руководство по Unreal Development Kit? ( пишу в этот раздел так как соответствующей темы нет, а основа этого есть C++ )
C++ Метод трассировки луча Нужно определить, находится ли точка в многоугольнике либо нет. Как я понял надо задать луч проходящий через эту точку, и если будет нечетное кол-во пересечений то точка находится внутри. Вопрос:... https://www.cyberforum.ru/ cpp/ thread279123.html
В астрале
Эксперт С++
8030 / 4787 / 655
Регистрация: 24.06.2010
Сообщений: 10,558
05.05.2011, 11:12 0

Class List<T>

05.05.2011, 11:12. Просмотров 1170. Ответов 1
Метки (Все метки)

Лучший ответ Сообщение было отмечено как решение

Решение

Narek514, Взять и создать.) Руками полагаю.

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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include <iostream>
 
template<class T>
class List
{
public:
    struct Node
    {
        Node* prev;
        Node* next;
        T elem;
        Node(T elem_ = T()):elem(elem_), prev(0), next(0)
        {
        }
    };
    List():head(0), tail(0)
    {
    }
    void push_back(T elem_)
    {
        Node* tmp = new Node(elem_);
        if(!head)
        {
            head = tmp;
            tail = tmp;
            return;
        }
        tail->next = tmp;
        tmp->prev = tail;
        tail = tmp;
    }
    void push_front(T elem_)
    {
        if(!head)
        {
            push_back(elem_);
            return;
        }
        Node* tmp = new Node(elem_);
        head->prev = tmp;
        tmp->next = head;
        head = tmp;
    }
    void pop_back()
    {
        Node* t = tail;
        tail = tail->prev;
        tail->next = 0;
        delete t;
    }
    void pop_front()
    {
        Node* t = head;
        head = head->next;
        head->prev = 0;
        delete t;
    }
    void erase(Node* to_del)
    {
        if(to_del == head)
            pop_front();
        else if(to_del == tail)
            pop_back();
        else
        {
            to_del->prev->next = to_del->next;
            to_del->next->prev = to_del->prev;
            to_del->next = 0;
            to_del->prev = 0;
            delete to_del;
        }
    }
    Node* getHead() const {return head;}
    Node* getTail() const {return tail;}
private:
    Node* head;
    Node* tail;
};
template<class T>
std::ostream& operator <<(std::ostream& os, const List<T>& lst)
{
    for(typename List<T>::Node* tmp = lst.getHead(); tmp; tmp = tmp->next)
        os << tmp->elem << ' ';
    os << '\n';
    return os;
}
 
int main()
{
    List<int> lst;
    lst.push_back(10);
    lst.push_front(5);
    lst.push_back(20);
    lst.push_front(40);
    lst.push_back(15);
    std::cout << lst << '\n';
    List<int>::Node* tmp = lst.getHead();
    lst.erase(tmp);
    std::cout << lst << '\n';
    tmp = lst.getTail();
    lst.erase(tmp);
    std::cout << lst << '\n';
    tmp = lst.getHead()->next;
    lst.erase(tmp);
    std::cout << lst << '\n';
}


Вернуться к обсуждению:
Class List<T>
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.05.2011, 11:12
Готовые ответы и решения:

raised exception class EstringListError with message 'List index out of bounds(-1)'. Process stopped. Use Stop or Run to continued
AnsiString str = FileListBox1-&gt;Directory + &quot;\\&quot; + FileListBox1-&gt;Items-&gt;Strings; ...

Ошибка E2333: Class member declared outside its class
Доброго времени суток,подскажите в чём дело?...

Project raison expetion class EClassNotFound with message "Class TMainMenu not found"
Что это может значит? Подскажите пожалуйста

List class
Если кто знает, где можно про этот класс почитать, как с ним работать, дайте линк плз.

1
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.