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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
#1

Выделение и освобождение памяти в c++ - C++

30.07.2012, 05:02. Просмотров 1217. Ответов 8
Метки нет (Все метки)

Не давно наткнулся на такую замечательность :

C++
1
2
3
4
system("PAUSE");//1 раз
int *p = new int[30000]; // память
system("PAUSE");//2 раз
delete[] p;// нет память
Запускаю программу,смотрю скока мемори она хавает 226(примерно)
Нажимаю 1 раз интер,программа хавает мемори 654кб(примерно)
нажимаю еще раз интер и тут,чудо программа опять хавает 654кб


почитал про new delete понял как они работуют,и тут сразу же мысль как же удалить этот не нужный кусок?Что бы программка опять хавала 226
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.07.2012, 05:02     Выделение и освобождение памяти в c++
Посмотрите здесь:

C++ Динамическое освобождение и выделение паямти под двумерные массивы
выделение и освобождение памяти C++
C++ выделение памяти и никогда не выполняете* ее освобождение
C++ Указатели на строки. Выделение и освобождение памяти
Освобождение и выделение памяти C++
C++ Выделение и освобождение памяти
C++ Выделение-освобождение памяти
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ProNoooob
72 / 72 / 6
Регистрация: 14.10.2009
Сообщений: 121
30.07.2012, 05:20     Выделение и освобождение памяти в c++ #2
Так работает менеджер памяти Windows.
Он резервирует эту память за твоей программой. Вдруг ты опять захочешь выделить кусок памяти?
Тогда память выделится быстрей.
К тому-же это не реальная память, а виртуальная.
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 05:22  [ТС]     Выделение и освобождение памяти в c++ #3
Да про это Я читал,но как же быть?Как удалить эту память ?И в смысле виртуальная?фаил подкачки чтоль ? %)
Nameless One
Эксперт С++
 Аватар для Nameless One
5760 / 3409 / 255
Регистрация: 08.02.2010
Сообщений: 7,406
30.07.2012, 08:32     Выделение и освобождение памяти в c++ #4
Цитата Сообщение от xADMIRALx Посмотреть сообщение
Как удалить эту память ?
Ты эту память уже удалил. А система ее освободит тогда, когда ей будет удобно/когда в этой памяти возникнет необходимость
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 08:34  [ТС]     Выделение и освобождение памяти в c++ #5
Nameless One, А мне самому нельзя что ли этим управлять ?
Nameless One
Эксперт С++
 Аватар для Nameless One
5760 / 3409 / 255
Регистрация: 08.02.2010
Сообщений: 7,406
30.07.2012, 08:35     Выделение и освобождение памяти в c++ #6
xADMIRALx, вроде нет, но не уверен. Стандартными средствами точно нет. А зачем?
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 08:36  [ТС]     Выделение и освобождение памяти в c++ #7
Nameless One, Я проста запиливаю данный из файла в массив оч многа,и потом мне нужно их освободить и с другого файла запилить...
Nameless One
Эксперт С++
 Аватар для Nameless One
5760 / 3409 / 255
Регистрация: 08.02.2010
Сообщений: 7,406
30.07.2012, 08:41     Выделение и освобождение памяти в c++ #8
xADMIRALx, ну и в чем проблема? Как я говорил выше, эту память ты уже освободил. Никто тебе не мешает заново выделить память. Не бойся, утечек не будет.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2012, 08:43     Выделение и освобождение памяти в c++
Еще ссылки по теме:

C++ Выделение и освобождение памяти в конструкторе и деструкторе
Как правильно записать в виде функции выделение памяти для двумерного массива и ее освобождение C++
C++ Освобождение и выделение динамической памяти
C++ Выделение и освобождение памяти для локальных переменных функций
C++ Выделение и освобождение памяти

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

Или воспользуйтесь поиском по форуму:
xADMIRALx
 Аватар для xADMIRALx
66 / 60 / 1
Регистрация: 09.06.2012
Сообщений: 291
30.07.2012, 08:43  [ТС]     Выделение и освобождение памяти в c++ #9
Nameless One, Ясно,спасибо!
Yandex
Объявления
30.07.2012, 08:43     Выделение и освобождение памяти в c++
Ответ Создать тему
Опции темы

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