|
|
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
Создал двумерный массив arr [j]. Сделал вычисления. int** arr = new int*[n]; for(int i = 0; ii < n; i++) { arr = new int[n]; for(int j = 0; jj < n; j++) { .... } Теперь необходимо делаю очистку памяти динамического массива следующим образом: for (int i=0; i<n; ji++) { delete [] arr; } delete [] arr; Но на форуме нашел что достаточно просто в конце дописать: delete [] arr; Дайте плз. совет какой метод правильный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:30 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
billiНо на форуме нашел что достаточно просто в конце дописать: delete [] arr;Имхо, нет, не досточно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:37 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
То есть нужно использовать первый вариант: for (int i=0; i<n; ji++) { delete [] arr; } delete [] arr; Тогда еще один вопрос: насколько я понял, delete [] не очищает память, а только освобождает ее, то есть значение в данной ячейке будет "жить" пока туда не запишется новое, нужно ли принудительно обнулять ячейку после delete? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:45 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
Исправленный код: for (int i=0; i<n; ji++) { delete [] arr ; } delete [] arr; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:48 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
Исправленный код: for (int i=0; i<n; i++) { delete [] arr ; } delete [] arr; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:48 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
billiСоздал двумерный массив arr [j]. Сделал вычисления. int** arr = new int*[n]; for(int i = 0; ii < n; i++) { arr = new int[n]; for(int j = 0; jj < n; j++) { .... } Теперь необходимо делаю очистку памяти динамического массива следующим образом: for (int i=0; i<n; ji++) { delete [] arr; } delete [] arr; Но на форуме нашел что достаточно просто в конце дописать: delete [] arr; Дайте плз. совет какой метод правильный. Код совсем не верный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 14:48 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
billiИсправленный код: for (int i=0; i<n; ji++) { delete [] arr ; } delete [] arr; Вы используйте тэг SRC, а то буква i в квадратных скобках воспринимается форумом как признак курсива. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 15:11 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
daevaorn Почему код совсем неверный? Все прекрасно работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 15:23 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
billi пишет: > *daevaorn * > Почему код совсем неверный? Все прекрасно работает. Ты если вообще этот код выкинишь, тоже будет прекрасно все работать, да только память не освободится. miksoft правильный код дал. Обнулять ничего не надо. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 15:39 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
MasterZivmiksoft правильный код дал.его дал автор топика, я лишь вставил в тэг SRC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 15:50 |
|
||
|
Очистка памяти
|
|||
|---|---|---|---|
|
#18+
я фигею, как это вообще может компилиться??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2007, 16:26 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34476247&tid=2029005]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
156ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 468ms |

| 0 / 0 |
