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

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

Войти
Регистрация
Восстановить пароль
 
Liername
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 33
#1

Ссылка на указатель - C++

19.11.2013, 11:15. Просмотров 403. Ответов 3
Метки нет (Все метки)

Задам, скорее всего, глупый вопрос, однако хотелось бы разобраться.

C++
1
2
3
4
5
6
// ...
{
    int *ptr = new int;
    int &x = *ptr;
}
// ...
При выходе за пределы блока, освободится ли память, на которую указывает ptr, или нет?
Если ссылка - обычная переменная, просто расположенная в заранее определенным программистом месте, то после выхода за пределы блока, программа, по идее, должна сама автоматически освободить занимаемую ею память...
Подозреваю, что память все же не освобождается, но все таки хотелось бы знать точно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2013, 11:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ссылка на указатель (C++):

Указатель или ссылка на указатель. В чем разница? - C++
Есть вопрос про указатели и ссылки на указатели :scratch: Хочу в функциях f1() и в f2() динамически выделить память и возвратить этот...

Ссылка на указатель на указатель - C++
void TEST( int **&refptr, int const &N); int main() { int const N = 10; int i{ 0 }, b{ 2 }, *ptr{ &i, &b }; ...

Указатель и ссылка - C++
Почему выгодней использовать указатель а не ссылку при использовании массивов?

Ссылка на указатель - C++
Привет всем, пишу класс реализующий стек, объявил вершину стека как приватный элемент. Написал метод Push - который должен добавить в...

Ссылка на указатель - C++
Почему не работает такая конструкция? void SwapInt(void* p1, void* p2) { int* & tmp=static_cast<int*>(p2); } и как...

Указатель и ссылка - C++
Помогите понять, немного запутался. #include<iostream> using namespace std; void ch1 (int *pa1); int main() {

3
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.11.2013, 11:22 #2
Цитата Сообщение от Liername Посмотреть сообщение
Подозреваю, что память все же не освобождается, но все таки хотелось бы знать точно.
Память же в не в блоке была выделена, а совсем в другой области. А ссылка - вего лишь псевдоним. Удалится вместе с указателем при выходе из блока. Утечка памяти. И это не ссылка на указатель.
0
zss
Модератор
Эксперт С++
6486 / 6049 / 1987
Регистрация: 18.12.2011
Сообщений: 15,691
Завершенные тесты: 1
19.11.2013, 11:29 #3
Для проверки попробуйте выполнить такую программку
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <conio.h>
 struct X
 {
     X(){puts("constructor\n");}
     ~X(){puts("destructor\n");}
 };
int main ()
{
    {
        X *ptr = new X;
        X &x = *ptr;
    }
    _getch();
}
Увидите, что деструктор не вызывается.
1
SatanaXIII
Супер-модератор
Эксперт С++
5616 / 2651 / 246
Регистрация: 01.11.2011
Сообщений: 6,535
Завершенные тесты: 1
19.11.2013, 16:30 #4
Liername, удалите у комнаты дверь, - удалится ли комната?
0
19.11.2013, 16:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2013, 16:30
Привет! Вот еще темы с ответами:

Указатель и ссылка - C++
В общем вопрос достаточно простой, в чём разница указателя и сылки? С одной стороны указатель это отдельный тип, отдельная ячейка в...

Ссылка(указатель) на вектор - C++
Добрый день! Немного загнался по поводу вроде простого кода: int main(){ vector&lt;int&gt; vct; vector&lt;int&gt;&amp; ptrVct = vct; ...

Ссылка на функцию класса (не указатель) - C++
можно ли делать ссылки на функции класса? например класс: class cdPolygon2D : public draw { public: ...

Ссылка на указатель в аргументе функции - C++
при изучении примеров реализации бинарного дерева(в функции добавления нового узла)я увидел,что есть как такой вариант,когда аргумент...


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

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

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