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

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

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

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

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

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

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

Ссылка на указатель - 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() {

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

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

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.11.2013, 11:22     Ссылка на указатель #2
Цитата Сообщение от Liername Посмотреть сообщение
Подозреваю, что память все же не освобождается, но все таки хотелось бы знать точно.
Память же в не в блоке была выделена, а совсем в другой области. А ссылка - вего лишь псевдоним. Удалится вместе с указателем при выходе из блока. Утечка памяти. И это не ссылка на указатель.
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,186
Завершенные тесты: 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();
}
Увидите, что деструктор не вызывается.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2013, 16:30     Ссылка на указатель
Еще ссылки по теме:

Указатель/ссылка в параметре функции - C++
Здравствуйте. Опять появился вопрос. Почему автор книги, которую я читаю, постоянно использует в параметрах функции ссылку/указатель и...

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

ссылка на указатель на константу. Не могу врубиться - C++
Добрый вечер! Не подскажите почему только выражение с pi_ref3 верное, а остальные - нет (VS 2013). Выражение с pi_ref1 вроде как-то...

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


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

Или воспользуйтесь поиском по форуму:
SatanaXIII
Супер-модератор
Эксперт С++
5603 / 2637 / 242
Регистрация: 01.11.2011
Сообщений: 6,496
Завершенные тесты: 1
19.11.2013, 16:30     Ссылка на указатель #4
Liername, удалите у комнаты дверь, - удалится ли комната?
Yandex
Объявления
19.11.2013, 16:30     Ссылка на указатель
Ответ Создать тему
Опции темы

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