2 / 2 / 1
Регистрация: 24.03.2017
Сообщений: 59
|
|
1 | |
Как удалить несколько указателей?26.03.2017, 18:01. Показов 1699. Ответов 8
Метки нет (Все метки)
Доброго времени суток. Суть вопроса: Есть 9 указателей созданного класса, в них записано с помощью оператора new данные. Так же есть массив указателей куда записан каждый этот указатель . Вопрос: как лучше их все удалить? Пытался удалить каждый элемент в массиве for(int i=0;i<9;i++){ delete [i]*arr} но был Вызов точки остановы. Или если удалять каждый указатель, то delete first,second,third.. но удалился только первый. Вывод сделал что удалять перечислением нельзя( Подскажите пожалуйста.
0
|
26.03.2017, 18:01 | |
Ответы с готовыми решениями:
8
Как удалить массив указателей char* Как обойтись без указателей и указателей на указатель? Удалить первичные вхождения с использованием указателей Массив указателей на строки: удалить последнюю строку |
7791 / 6558 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
||||||
26.03.2017, 18:05 | 2 | |||||
0
|
2 / 2 / 1
Регистрация: 24.03.2017
Сообщений: 59
|
|
26.03.2017, 18:18 [ТС] | 3 |
Точно)) Спасибо. А вот если бы массива не было? Но есть 9 указателей, каждому писать delete?
0
|
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
|
26.03.2017, 18:22 | 4 |
0
|
2782 / 1935 / 570
Регистрация: 05.06.2014
Сообщений: 5,600
|
|
26.03.2017, 18:23 | 5 |
std::unique_ptr в помощь, он сам все удалит, когда будет прибит массив в котором он лежит.
0
|
2 / 2 / 1
Регистрация: 24.03.2017
Сообщений: 59
|
|||||||||||
26.03.2017, 22:27 [ТС] | 6 | ||||||||||
Без проблем. Обычное задание- Игра Крестики-Нолики. Суть такова:есть абстрактный класс, и от него 2 производных. Создаю указатели абстрактного и в определённой функции(здесь не указываю её) записываю с помощью этих указателей в область динам. памяти объекты производных. Так же есть массивы , которые записывают нужные указатели.
Добавлено через 12 минут И через несколько минут меня осенило.... Зачем я удаляю указатели, если я их возможно буду использовать....Но проблема так же возникает с обнулением , в массиве указателей они обнуляются, а вот в сами указатели по прежнему имеют данные(пришёл вот к такому решению, но хотел бы увидеть аналог:
0
|
7791 / 6558 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
|
27.03.2017, 09:49 | 7 |
Ты сначала изучи разницу между самим указателем и тем, на что он указывает.
В твоём случае они вообще не нужны - массивы маленькие. Можно обойтись без динамического выделения. Ну а если используешь объекты повторно, то предусмотри какие-то функции для очистки содержимого.
0
|
2 / 2 / 1
Регистрация: 24.03.2017
Сообщений: 59
|
|
28.03.2017, 11:18 [ТС] | 9 |
Спасибо большое.
0
|
28.03.2017, 11:18 | |
28.03.2017, 11:18 | |
Помогаю со студенческими работами здесь
9
Почему в сортировке указателей на объекты в вызове функции используются адреса объектов, а не указателей? Создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей Объяснить различия в работе указателей на целое число и указателей на const char (строки в стиле Си) Создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |