Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.58/160: Рейтинг темы: голосов - 160, средняя оценка - 4.58
9 / 9 / 1
Регистрация: 17.06.2012
Сообщений: 168

указатели и очистка памяти

23.11.2012, 20:41. Показов 31425. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В отличии от java в с++ память по умолчанию нужно очищать самостоятельно.

Понятно, что если память зарезервированная неким указателем не нужна его следует просто удалить.
но если указатель например р1 ссылается на структуру, мне же нужно присвоить указателю другую структуру того же типа содержащуюся в адресе р2.
Т.е. если я просто присвою указателю р1 который уже содержит структуру адрес новой структуры указателя р2, то старые данные потеряются навсегда но будут занимать место?

Правильно ли я поступлю, если создам новый новый указатель р0, сделаю присвоения р0 = р1; затем delete* р0;
и далее p1 = p2 ?

К слову читал, что в С++ есть сборщики мусора.
Насколько они используются ?
Это экзотика или же стандартная фича?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.11.2012, 20:41
Ответы с готовыми решениями:

Указатели и очистка памяти
Возник интересный вопрос... class Test { int a; }; class Test1 : public Test { int b, c; }; int main() { Test1 *t = new Test1; ...

Очистка памяти
Как правильно очистить память в массиве классов Вот код конструктора, выделяющего память, и деструктора. Выдает ошибку в самом конце...

Очистка памяти
Вот сделал лабу и все работает отлично, но осталось последнее new выделяет память мне нужно добавить функцию которая будет вызыватся в...

23
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
29.11.2012, 14:27
Студворк — интернет-сервис помощи студентам
taras atavin, вы скатываетесь в какую-то никому не нужную философию. К этому приводит любое обсуждение с вашим участием. В прошлый раз у вас невозможно было реализовать сборщик мусора в принципе, теперь у вас джава не объектно-ориентированная ни на грош. Возможно, мы с вами живём в различных Вселенных. Как бы то ни было, философию это будем заканчивать. К теме она никакого отношения не имеет.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
29.11.2012, 14:30
Выделение части проекта в оболочечный спецкласс - совсем другое дело. Ни какой архитектуре оно не мешает.

Добавлено через 44 секунды
Цитата Сообщение от silent_1991 Посмотреть сообщение
taras atavin, вы скатываетесь в какую-то никому не нужную философию. К этому приводит любое обсуждение с вашим участием. В прошлый раз у вас невозможно было реализовать сборщик мусора в принципе, теперь у вас джава не объектно-ориентированная ни на грош. Возможно, мы с вами живём в различных Вселенных. Как бы то ни было, философию это будем заканчивать. К теме она никакого отношения не имеет.
А нефиг меня на философию провоцировать.
Кроме того, без философии прощай объектно-ориентированное проектирование архитектуры, потому что закономерность и истинная случайность сходства классов - это сплошная философия.

Добавлено через 1 минуту
Цитата Сообщение от silent_1991 Посмотреть сообщение
В прошлый раз у вас невозможно было реализовать сборщик мусора в принципе,
Эйси, автоматический вызов деструкторов не возможен в принципе. Как же тогда вообще юзать кучу?
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
29.11.2012, 14:33
Цитата Сообщение от taras atavin Посмотреть сообщение
Эйси, автоматический вызов деструкторов не возможен в принципе. Как же тогда вообще юзать кучу?
Это уже обсуждалось. Если вы до сих пор думаете, что сборка мусора не возможна - что ж, это ваши личные проблемы. Удачи.
 Комментарий модератора 
Повторяю, оффтоп закончили. Следующие сообщения буду удалять. Если уж очень хочется пообщаться на эти темы - пишите мне в СЛ.
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
30.11.2012, 05:48
C++ поддерживает идиому RAII.
Особенно явно она используется в STL, с умными указателями.
Также, в потоках ввода/вывода с файлов, деструктор сам закроет нужный файл (С++11), и вызывать метод close() уже нет необходимости.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.11.2012, 05:48

Очистка памяти
При выполнении программы, память приложения растёт, а она должна быть неизменной. int main() { setlocale(LC_ALL,...

очистка памяти
в данном случае деструктор очистит всё, или нет? #include "base.h" #include <cstdlib> #include <ctime> base::base(int x,int...

очистка памяти
при запуск программы сама собой создаётся точка останова в строке 59. И дальше программа идти не хочет (даже инструментами отладки). //...

Очистка памяти
Цель: Написать программу, которая читает текст из файла и записывает в новый файл те слова, которые содержат буквы, введенные с...

Очистка памяти
Подскажите пожалуйста что не так делаю, создаю массив лейблов: TLabel **Labels; Labels = new TLabel*; for(int i = 0; i < rabot...


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

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
Сукцессия 20. Война автоботов. Делаем ставки. Лёд против "пш-пш!".
anaschu 11.07.2026
Битва ИИ в ризосфере: Как мы скрестили жесткие ОДУ, закон Фика и «подземный шантаж» Уважаемые коллеги! Хочу поделиться уникальным опытом ведения междисциплинарной компьютерной разработки. Прямо. . .
Сукцессия 19. Какие выводы я сделал из модели? Часть 2.Внутримикоризный стехиометрический буфер и хроно-дискретные зоны экспансии
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования
Сукцессия 18. Какие выводы я сделал из войны грибов с деревьями? Часть 1- рассказ и немного про термины
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования Система ОДУ описывает динамику изменения массы различных компонентов системы во времени. Ключевой. . .
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru