Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/88: Рейтинг темы: голосов - 88, средняя оценка - 4.77
2 / 2 / 1
Регистрация: 19.09.2015
Сообщений: 121

Нужно ли очищать память, выделенную под вектор?

05.03.2017, 23:06. Показов 17473. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. При работе с динамическими массивами всегда чистил память оператором delete. Нужно ли делать тоже самое с векторами, и если да, то как? Например в примере, приведенном ниже.

C++
1
2
3
4
5
6
#include <vector>
 
vector<int> arr;
arr.reserve(10);
arr.resize(10);
//....
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.03.2017, 23:06
Ответы с готовыми решениями:

Класс list, когда нужно очищать память?
не могу разобраться когда нужно очищать память &quot;delete input_&quot; и почему каждый раз выделяя помять у меня один и ттот же адрес ...

Почему не очищает память, выделенную под массив структур
#include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; const int ar_size=20; struct CandyBar { char name; double...

Как освободить память, выделенную через new под матрицу?
Здравствуйте!!! Почему-то никак не освобождается память, выделенная оператором new под двумерный массив типа char,- как только идет...

3
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
05.03.2017, 23:11
Цитата Сообщение от Mendel Посмотреть сообщение
то как?
http://ru.cppreference.com/w/c... ink_to_fit
0
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
05.03.2017, 23:17
Mendel, а зачем? Если придерживаться single responsibility principle то вектор не проживёт дольше 5-12 операций. А если вектор член класса - то зачем вечно подчищать хвост? Он же не просто дефакто появляется
1
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
06.03.2017, 00:01
Лучший ответ Сообщение было отмечено Mendel как решение

Решение

Он удалится сам при выходе из зоны видимости, как, например, переменная типа int.

Специально удалять надо, если сам вектор у тебя почему-то в куче ( vector<int>* t = new vector<int>(); delete t.

Метод shrink_to_fit, который изменяет размер зарезервированной памяти, нужен крайне редко, и вероятнее всего, тебе не нужен пока.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.03.2017, 00:01
Помогаю со студенческими работами здесь

Очистить динамическую память, выделенную под член структуры
Объявление и инициализация объекта: pupil B = Constructor(&quot;MyName&quot;, 18, 50); Сама структура: struct pupil{ public: char *name =...

Не могу удалить динамически выделенную память под массив
Здравствуйте. Изучил сегодня динамическое выделение памяти и не могу ее удалить. Подскажите где ошибка и, если возможно, объясните почему...

Как правильно удалять выделенную память под указатель на указатель?
есть код #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; using namespace std; void sort_1(const...

Очищать ли память?
Всем привет. Начал изучать С++ и возник такой вопрос. Есть стандартный класс string, например я создал строку: string a =...

Как правильно очищать вектор указателей
Привет Всем! Есть вопрос по вектору указателей, как правильно очищать память при таком случае очищение происходит существенно медленнее чем...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru