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

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

Войти
Регистрация
Восстановить пароль
 
Mencey
147 / 94 / 7
Регистрация: 22.07.2010
Сообщений: 424
#1

Удалит ли delete[] после измения типа указателя - C++

25.07.2010, 10:12. Просмотров 468. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
...
double *pd = new double[10];
char *pc = (char*)pd;
delete[] pc;
...
Меня интерисует что сделает delete[] pc?

Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.07.2010, 10:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удалит ли delete[] после измения типа указателя (C++):

delete указателя - C++
valueOfWordS - указатель, член класса String_value, конструктору же этого класса передается указатель на переменную того же типа: ...

Вызов delete для нулевого указателя - C++
Здравствуйте. Прочитал про конструктор переноса, в котором при копировании, необходимо обнулить все указатели, чтобы при удалении...

Изменение типа указателя - C++
Вот допустим у меня есть два простейших класса, объекты которов занимают в памяти одинаковое количество памяти class prim { ...

Приведение типа указателя - C++
Здравствуйте, у меня такой вопрос: как организовать приведение типа указателя к другому? Есть указатель string *ptr; на поле класса, нужно...

Приведение типа указателя на метод - C++
Здравствуйте. Есть функция, принимающая void (*f)(), возможно ли использовать ее в классе, передавая ей не-static метод этого класса? ...

Передача типа указателя на функцию - C++
Всем привет. Недавно в теме начинающих возник вопрос, а можно ли передать тип (указатель на функцию) без использования typedef: ...

3
Aaxenon
Light Knight
106 / 29 / 3
Регистрация: 03.06.2010
Сообщений: 361
25.07.2010, 10:14 #2
очищает память о.о
0
Mencey
147 / 94 / 7
Регистрация: 22.07.2010
Сообщений: 424
25.07.2010, 10:26  [ТС] #3
Цитата Сообщение от RoY_Mu$T@nG Посмотреть сообщение
очищает память о.о
Это я понял, а будет ли удалён блок памяти на который указывает pd?

Добавлено через 6 минут
т.е. оператор delete[] очистит sizeof(double)*10 байт?
0
Nick Alte
Эксперт С++
1639 / 1011 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
25.07.2010, 11:32 #4
Очистит. Ему вообще неинтересен тип указателя, они все приводятся к void *.
0
25.07.2010, 11:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.07.2010, 11:32
Привет! Вот еще темы с ответами:

Приведение указателя базового типа - C++
У меня не получается выполнить приведение указателя базового типа. Я, и static_cast пробовал, и dynamic_cast пробовал, но компилятор всё...

Преобразование указателя одного типа в указатель другого - C++
Помоги пожалуйста составить программу: Преобразовать указатель одного типа в указатель другого.

Как сравнить два указателя типа char? - C++
char *p1; p1 = new char; p1 = "qwert"; char *p2; p2 = new char; p2 = "zz"; if(*p1==*p2) cout << "Равны! "<< endl; ...

Контроль корректности при приведении типа указателя - C++
Требуется максимально корректно проверить, что переменная типа viod* содержит указатель на объект некоторого класса TDerived,...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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