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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ёрик
46 / 46 / 2
Регистрация: 07.01.2009
Сообщений: 298
#1

Очитстить память - C++

21.02.2010, 11:35. Просмотров 295. Ответов 0
Метки нет (Все метки)

Подскажите,как мне очистить память в таком случае:

У меня класс Deque. В нем есть структура:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
template<typename T> class Deque
{
 
 
struct Node
    {
        Node* next_;
        typename T item_;
    };
 
public:
    Deque(): last_(0),first_(0) {} 
    ~Deque();
 
    void push_back(const T& src);
    void push_front(const T& src);
    void pop_back();
    void pop_front();
 
private:
    Node* last_;
    Node* first_;
};
Когда я перегружаю функцию,что выделить память для char* (у меня отдельная функция читает файл пихает все в deque), то делаю:

C++
1
2
3
4
5
6
while (!fdIn.eof())
    {
        char* buf = new char[num];
        fdIn.getline(buf,num,lim);
        push_back(buf);
    }
Как мне потом очистить память. У меня есть обычный конструктор для типа T, но для массива нужно удалять по-другому
C++
1
delete[]
. Дело в том, что у меня только есть указатель на первый элмент списка и на последний.

p.s. Deque реализован как список.
Для удаление массива нужен указатель,а у меня только указатель на структуру.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2010, 11:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Очитстить память (C++):

Статическая память,Динамическая память. - C++
a) Статическая память. Двумерный массив. Дан массив целых чисел. В массиве есть отрицательные числа. Определить координаты левого нижнего...

Realloc выделяет память для массива int и не выделяет память для массива double - C++
Скажите пожалуйста, почему вот этот код работает: #include &lt;iostream&gt; #include &lt;windows.h&gt; using namespace std; int main()...

Память - C++
Здравствуйте, пишу программу, суть такова: Нужно строки из файла отсортировать по длине строки, а строки равной длины отсортировать по...

Динамическая память с++ - C++
Как использовать динамическую память в с++

Указатели и память - C++
Народ как указателю присвоить определённый адрес? P.S. Цитирую задание &quot;Пользуясь указателями выдать на печать адреса этих символов и...

Не выделяется память - C++
Здравствуйте, пытаюсь выделить память, на одном компьютере работает, на другом нет, возвращает 0x00000000, хотя память имеется в наличии. В...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2010, 11:35
Привет! Вот еще темы с ответами:

Динамическая память - C++
Кто сможет помочь? Дана матрица А. Упорядочить элементы каждой строки в порядке не убывания. (нужно составить 2 программы с...

Статическая память - C++
Если я на этапе компиляции выделил слишком много памяти. Например зарезервировал память под огромный массив.Но в системе нет столько памяти...

разделяемая память - C++
Всем привет! подскажите, пожалуйста, как решить такую проблему: У меня есть программа которая открывает 2 консольных окна. есть...

Освободится ли память? - C++
voin f(char const* str) { ... } for (int i = 0; i &lt; 100; i++) f(&quot;Hello world!&quot;); Это хоть и указатель, но строка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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