170 похожих чатов

Добрый вечер. как освободить память которую занимал вектор? нашел такое

упоминание:
vector<ElementData> Elements
// fill the vector up
vector<ElementData>().swap(Elements);
Корректно ли оно?

16 ответов

8 просмотров

shrink_to_fit

Stas
shrink_to_fit

Так тут удалить надо

Слава
Так тут удалить надо

.clear()/.shrink_to_fit() но можно и свапом. но это менее очевидный код

Elements = std::vector<ElementData>;

.clear()

Vlad Doc
.clear()

Он память не освобождает

Vlad Doc
+ shrink_to_fit

Который может ничего не делать. Надо как настоящий с++ погромист делать vector.swap(std::vector<Element>{}); А кек у автора вопроса так и есть

Ω- Автор вопроса
Егор (Дима)
Который может ничего не делать. Надо как настоящий...

cout << hash_table.size() << "\n"; // vector<vector<pair<string, string>>>().swap(hash_table); hash_table.clear(); hash_table.shrink_to_fit(); cout << hash_table.size() << "\n"; проверил оба метода: везде выводиться размер 0 после очистки. получаеться оба работаеют?

Ω
cout << hash_table.size() << "\n"; // vector<vecto...

После clear сайз всегда будет 0, но никто не обещает что shrink_to_fit или clear очистят память которую они держат

Егор (Дима)
Который может ничего не делать. Надо как настоящий...

Ну, если написать swap(vector, std::vector<Element>{}), то это даже менее неочевидно. Но, конечно, я против такого подхода

Ofee Oficsu
Ну, если написать swap(vector, std::vector<Element...

#define CLEAR(x) do { using std::swap; \ swap(x, decltype(x)()); } while (false); Пожалуйста!

Vlad Doc
А шаблоном нельзя?

сделать нормально можно в любое время, но зачем

Похожие вопросы

Обсуждают сегодня

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
Есть сайт. Там была древняя версия эво. Стоял плагин, который каждый коммент в Jot делал отдельной страницей. После обновления все слетело, теперь старница открывается отдельн...
Artem
1
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
27
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
11
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
Хтось використовував Vapor на Windows?
Jaroshevskii
15
Какое виндузовое сообщение приходит TTabSheet, что риэлайняться контролы на нем, даже у которых парент другой? Ситуация: открываю форму - кнопок нет, перелистываю на другой т...
Катерина Свиридова
7
Карта сайта