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

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

Войти
Регистрация
Восстановить пароль
 
monolit
185 / 184 / 22
Регистрация: 24.03.2011
Сообщений: 667
Завершенные тесты: 1
#1

Оператор delete[] - C++

07.05.2013, 22:03. Просмотров 348. Ответов 3
Метки нет (Все метки)

Салют!
тут вот в чем вопрос...
Если с помощью new выделена память под несколько, скажем, массивов, то с помощью оператор delete[] удалять эти несколько объектов(пусть а, в), можно как
Код
delete[] a, b
или же нужно писать так
Код
delete []a, []b
До недавнего времени, дабы не рисковать, ни одним из этих вариантов не пользовался, но неудобно уже несколько строчек писать для удаления нескольких переменных... Подскажите, как правильно? Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2013, 22:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Оператор delete[] (C++):

оператор delete[] - C++
Применение delete (без ) к указателю на массив освобождает только нулевой элемент, а оставшиеся создают утечку памяти, но как объяснить...

Оператор delete[] - C++
Код: #include <iostream> #include <cstdlib> #include <ctime> #define stop __asm nop int main() { int N,M; ...

Оператор delete - C++
Написал небольшую программу и в просмотрел каждую строчку в отладчике. И получается что сразу же после оператора delete p_val; значение в...

Оператор delete - C++
Вчера заметил, но ответа в сети так и не нашел: int *i = new int(5); cout << *i << endl; delete i; int p = *i; cout << p << ...

оператор delete - C++
#include <iostream> #include <clocale> #include <iomanip> using namespace std; int main() { setlocale (LC_ALL,"russian"); ...

Оператор delete в деструкторе - C++
Здравствуйте, нужна помощь, есть класс и функция к которую передается этот класс: #include<iostream> using namespace std; class...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Модератор
Эксперт CЭксперт С++
13134 / 7397 / 828
Регистрация: 27.09.2012
Сообщений: 18,228
Записей в блоге: 3
Завершенные тесты: 1
07.05.2013, 22:08 #2
Цитата Сообщение от monolit Посмотреть сообщение
можно как
оператор запятая возвращает правый операнд, поэтому получится код аналогичный этому:
C++
1
2
a;
delete[] b;
Добавлено через 1 минуту
Цитата Сообщение от monolit Посмотреть сообщение
или же нужно писать так
А это компилируется?

Добавлено через 2 минуты
Цитата Сообщение от monolit Посмотреть сообщение
но неудобно уже несколько строчек писать для удаления нескольких переменных
а куда деваться?
можете сделать функцию с неопределенным кол-вом аргументов, но лично я сомневаюсь в необходимости такого извращения
programina
1914 / 599 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
07.05.2013, 22:09 #3
Цитата Сообщение от monolit Посмотреть сообщение
Подскажите, как правильно?
в несколько строчек, причем первый массив удаляется последним, а последний первым.
monolit
185 / 184 / 22
Регистрация: 24.03.2011
Сообщений: 667
Завершенные тесты: 1
07.05.2013, 22:48  [ТС] #4
Спасибо, я таки убедился, что все делал правильно)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.05.2013, 22:48
Привет! Вот еще темы с ответами:

Можно ли обобщить оператор delete ? - C++
Здравствуйте! Есть некоторый класс в котором есть указатель которому присваивается некоторое значение "из-вне" так сказать, так вот его...

Нужно ли тут вызывать оператор delete - C++
Всем здрасьте. Тут встал вопрос об операторе delete. struct x { //... }; x* y; y = new x; //...

Хочу понять когда можно делать оператор delete - C++
совсем новичок, а в книге толком не объясняется, помогите понять суть плиз Вот очень простой код: #include <windows.h> class...

Оператор delete(ошибка) - free(): invalid next size (fast): 0x098f7008 *** - C++
Делаю некое подобие функции itoa: char* c_itoa(int,char*,int):Реализацию сделал так(упрощённый вид):char* c_itoa(int number,char*...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.05.2013, 22:48
Ответ Создать тему
Опции темы

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