Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Igor Fender
1 / 1 / 9
Регистрация: 09.07.2014
Сообщений: 167
#1

Ссылки и очистка памяти - C++

08.07.2015, 22:18. Просмотров 403. Ответов 2
Метки нет (Все метки)

Здравствуйте!

Если я создаю ссылку и присваиваю ей значение (константу или нет) должен я как и с указателями заботится об памяти?

К Примеру:

C++
1
int &a = *(new int(5));
C++
1
const int &a = 5;
Где нужно очищать память, а где нет?
C++
1
delete &a; // Правильно?

И вот такой вопрос:
C++
1
2
3
    int *p = new int(7);
    int &a = *p;
    delete &a; //Допустимо?? или только delete p;  ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2015, 22:18
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Ссылки и очистка памяти (C++):

Очистка памяти
При выполнении программы, память приложения растёт, а она должна быть...

Очистка памяти
Подскажите пожалуйста что не так делаю, создаю массив лейблов: TLabel...

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

Очистка памяти
Как правильно очистить память в массиве классов Вот код конструктора,...

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

очистка памяти
в данном случае деструктор очистит всё, или нет? #include "base.h" #include...

2
Croessmah
++Ͻ
14161 / 8086 / 1513
Регистрация: 27.09.2012
Сообщений: 19,926
Записей в блоге: 3
Завершенные тесты: 1
08.07.2015, 22:27 #2
Цитата Сообщение от Igor Fender Посмотреть сообщение
Если я создаю ссылку и присваиваю ей значение (константу или нет) должен я как и с указателями заботится об памяти?
Цитата Сообщение от Igor Fender Посмотреть сообщение
Где нужно очищать память, а где нет?
Если выделяли в динамической памяти, то всё под Вашим контролем и не будет автоматически освобождаться.

Цитата Сообщение от Igor Fender Посмотреть сообщение
delete &a; // Правильно?
угу.

delete &a; //Допустимо?? или только delete p; ?
Без разницы, главное, чтобы адрес был тот, который вернул new до этого.
1
DrOffset
7518 / 4514 / 1097
Регистрация: 30.01.2014
Сообщений: 7,362
08.07.2015, 23:46 #3
Если код такой:
Цитата Сообщение от Igor Fender Посмотреть сообщение
const int &a = 5;
то delete, разумеется, не нужен.
delete нужен там, где был new.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2015, 23:46
Привет! Вот еще темы с решениями:

Очистка динамической памяти
Добрый день, у меня такой вопрос: Есть функция принимающая на вход три...

Vector, очистка памяти
У меня есть вектор, который состоит из объектов типа класс. После выполнения...

Указатели и очистка памяти
Возник интересный вопрос... class Test { int a; }; class Test1 : public Test {...

Правильная очистка памяти
Пытаюсь разобратся с работой с памятью в с++. Есть класс BigInteger содержащий...


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

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

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