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

Чем ссылка отличается от указателя? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Mar-12
 Аватар для Mar-12
-21 / 5 / 1
Регистрация: 14.03.2013
Сообщений: 131
08.06.2013, 22:35     Чем ссылка отличается от указателя? #1
чем ссылка отличается от указателя?
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11811 / 6790 / 767
Регистрация: 27.09.2012
Сообщений: 16,843
Записей в блоге: 2
Завершенные тесты: 1
08.06.2013, 22:43     Чем ссылка отличается от указателя? #2
Упрощенным синтаксисом. Ссылка по сути - обертка над указателем.
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
08.06.2013, 22:59     Чем ссылка отличается от указателя? #3
и меньшей гибкостью, но большей безопасностью еще.
(массив ссылок создать нельзя, указателя на ссылку быть не может и прочим)
немного можно почитать в http://ru.wikipedia.org/wiki/%D0%A1%...D0%B0_(C%2B%2B) (Связь с указателями)
=====================
Убежденный
Системный программист
 Аватар для Убежденный
14175 / 6190 / 982
Регистрация: 02.05.2013
Сообщений: 10,304
Завершенные тесты: 1
08.06.2013, 22:59     Чем ссылка отличается от указателя? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ссылка есть только в C++.
Указатель есть и в C++, и в C.

Ссылка не может быть неинициализирована или указывать на "пустое" значение.
Указатель может.

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

Ссылка допускает только один уровень косвенности: нельзя иметь ссылку на ссылку.
Указатель может указывать на указатель. Который указывает на указатель. И т.д.

Ссылка может указывать на указатель.
Указатель на ссылку указывать не может.

const-ссылка может продлевать время жизни временного объекта, на который она указывает.
У указателя такая особенность отсутствует.

Нельзя иметь массив ссылок.
Массив указателей - можно.

Возможно, есть и другие отличия...
Expocooky
 Аватар для Expocooky
56 / 56 / 2
Регистрация: 06.06.2013
Сообщений: 112
09.06.2013, 12:05     Чем ссылка отличается от указателя? #5
Ссылка - синоним
Указатель - адрес
Mar-12
 Аватар для Mar-12
-21 / 5 / 1
Регистрация: 14.03.2013
Сообщений: 131
09.06.2013, 12:12  [ТС]     Чем ссылка отличается от указателя? #6
daslex, я где то читала,что ссылка более безопасна,но не поняла почему?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11811 / 6790 / 767
Регистрация: 27.09.2012
Сообщений: 16,843
Записей в блоге: 2
Завершенные тесты: 1
09.06.2013, 12:18     Чем ссылка отличается от указателя? #7
Цитата Сообщение от Mar-12 Посмотреть сообщение
но не поняла почему?
Хотя бы потому что ссылка не может ни на что не "указывать", её нельзя изменить, а следовательно случайно "перенаправить". Однако ссылка также может "указывать" на невалидный объект("висячая ссылка"), тут уж так сказать нужно самому следить и не допускать этого
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2013, 13:44     Чем ссылка отличается от указателя?
Еще ссылки по теме:

Чем отличается delete[] от delete? C++
C++ Чем new отличается от malloc?
Чем C++ отличается от C++ Builder? C++

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

Или воспользуйтесь поиском по форуму:
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
09.06.2013, 13:44     Чем ссылка отличается от указателя? #8
В принципе, обобщив, можно сказать так: ссылка - это константный указатель, автоматически разыменуемый компилятором.
Ссылка всегда "находится" рядом со своим объектом и никуда от него не уходит))
Yandex
Объявления
09.06.2013, 13:44     Чем ссылка отличается от указателя?
Ответ Создать тему
Опции темы

Текущее время: 10:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru