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

Как освобождает память STL (на простом примере) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разработать программу, которая читает текстовой файл и некоторую букву и выводит слова файла http://www.cyberforum.ru/cpp-beginners/thread961171.html
Разработать программу, которая читает текстовой файл и некоторую букву и выводит слова файла, начинающиеся с этой буквы, а также их количество. кто может помогите пожалуйста с программой
C++ Распараллеливание вычислений Вычисляю произведение матриц несколькими потоками (количество задаётся пользователем). Потоки "засыпают" на 1 мс. При вычислении матриц размерами больше 5 проблем не возникает. А вот при вычислении матриц размерами 3х4, 2х4 остаются не вычисленные элементы. Когда я убираю Sleep(), то вычисления происходят нормально, но при малых размерах матрицы только одним потоком. Вот код моей функции,... http://www.cyberforum.ru/cpp-beginners/thread961151.html
C++ Объявить переменные разных типов в заголовке for
Здравствуйте, хочу узнать можно ли как-то объявить в for переменные разных типов, например: for(int i=0, double d=1.2; i<10; i++, d+=0.5) Заранее, спасибо.
C++ Поиск максимального елемента массива , используя метод деления пополам
Найти максимальный элемент в массиве a1, ..., an, используя метод деления пополам max (a1, ..., an) = max (max (a1, ..., an/2), max (an/2+1, ..., an)).
C++ Как создать сервер компилятор? http://www.cyberforum.ru/cpp-beginners/thread961108.html
Как создать сервер компилятор? Чтобы компилировала gnu c++ Я ЧАЙНИК!!!
C++ Удаление элемента из двусвязного списка Помогите пожалуйста найти где я ошибся. Элементы в список добавляются, вывод на экран тоже работает, но после удаления любого элемента: добавление в конпец списка не работает, попытка удалить элемент вызывает аварийное завершение? В чем напутал? Заранее спасибо. #include<iostream> #include<conio.h> #include<string> #include<cstdlib> #include<new> #include<iomanip> using namespace std; подробнее

Показать сообщение отдельно
newbie666
Заблокирован

Как освобождает память STL (на простом примере) - C++

24.09.2013, 13:35. Просмотров 562. Ответов 14
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
какая - то функция
{
    struct ITEM
    {
         std::wstring a;
         std::wstring b;
    }
    
    ITEM *array = new ITEM[10];
    ....
    в цикле как - то присваиваем значения каждому элементу
    return 0;
}
Вот интересно, освободится ли сама память после выхода из функции ? Если нет, то как правильно её освободить? Может вызывать для а и b каждого элемента массивы clear() ?

Добавлено через 3 минуты
или перед выходом нужно вызвать delete[] array и тогда для каждого элемента будет вызван деструктор и как следствие для а и b каждого элемента будет вызван свой деструктор, а по скольку это контейнеры stl - будет вызван для них clear(), который и освободит память... Но возможно он её не освободит, а просто назначит значение элементов 0, а размер контейнера и как следствие - размер занимаемой им памяти останется прежний... Емаё, как правильно освободить память в таком случае?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru