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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.64
spartak17
0 / 0 / 0
Регистрация: 22.10.2006
Сообщений: 7
#1

Какие цели использования ссылок в C++? - C++

08.01.2007, 22:46. Просмотров 2699. Ответов 4
Метки нет (Все метки)

Мне понятно как работают ссылки... но не ясно для каких целей они используются..помогите пожалуйста!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2007, 22:46     Какие цели использования ссылок в C++?
Посмотрите здесь:

Особенности использования указателей и ссылок в C++ при возврате из функции - C++
Пусть у нас есть некий класс CBase и есть функция, которая создает и возвращает объект класса CBase. Создать она его может стеке или в...

Таблица перекрестных ссылок на основе использования динамических списков и деревьев - C++
Составить таблицу перекрестных ссылок. Программа читает текст и собирает все слова этого текста в дерево поиска, запоминая номера строк, в...

Надо проверить какие квадраты влезли в круг а какие нет - C++
Есть круг с центром в a = 150, b = 150 радиус R*R = 1800, стороны квадратов 10. Координаты нижнего левого угла квадрата с...

Геометрическая задача - невозможность достич цели - C++
Формат данные: круги Область данных: 2D-поверхность, ограниченная прямоугольником Входные данные: радиус цели и его центр, радиус...

Данные цели числа b1 , b2 , . , b10 - выяснить - C++
Данные цели числа b1 , b2 , ... , b10 - выяснить : а) верно , что сумма тех из них , которые больше 20. превышает 100; б) Верно ли, что...

Узнать, какие разряды включены в число, а какие нет - C++
Помогите разобраться.Это все надо на Си. Значение int 4 байта т.е 32 бита.Пусть есть число 10(хотя в проге число зарание не известно!!)...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vizlim
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 269
09.01.2007, 01:16     Какие цели использования ссылок в C++? #2
ccылка это значёк амперсанда ("&") перед переменной...
пример:
C++
1
2
int i=10;   /* Выделяет участок памяти для переменной i типа integer (4 байта) и записывает значение в участок памяти равный 10 */
int *ii=&i;  /* Переменная ii типа integer не выделет "второй" участок памяти для значения переменной ii которой будет равен 10, а обратится к учаску памяти переменной i и возьмёт значение оттуда, при этом формально у нас будет выделен только один участок памяти (тоесть 4 байта) */
ссылки используються для экономии памяти в программах на С++...
В Java к примеру ссылок и указателей нету из-за этого простейшая программма на Java есть много памяти на компьютере по сравнению с С++ и из-за этого, может ухудшаться быстродействие программы и "стабильности" системы в целом (при нехватки памяти всё начинает тормозить =))
bazile
58 / 34 / 20
Регистрация: 15.03.2007
Сообщений: 6,911
09.01.2007, 15:23     Какие цели использования ссылок в C++? #3
Ссылки часто используются при передаче параметров чтобы избежать копирования параметра в стек и лишнего вызова конструктора (если параметр это объект). Также их использование позволяет обрашаться к полям параметра без оператора ->, что улучшает читабельность.
bazile
58 / 34 / 20
Регистрация: 15.03.2007
Сообщений: 6,911
09.01.2007, 15:29     Какие цели использования ссылок в C++? #4
Vizlim (08.01.2007)
В Java к примеру ссылок и указателей нету из-за этого простейшая программма на Java есть много памяти на компьютере по сравнению с С++ и из-за этого, может ухудшаться быстродействие программы и "стабильности" системы в целом (при нехватки памяти всё начинает тормозить =))
Глупость. Наличие указателей в языке программирования никак не связано с требованиями к памяти и к стабильности работы. Java требует больше памяти из-за своей виртуальной машины. Тоже самое верно для .NET Framework и для похожих систем. Новички в С++ чаще всего испытывают трудности именно с указатели и допускают ошибки ухудщающие стабильность программы.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.01.2007, 17:01     Какие цели использования ссылок в C++?
Еще ссылки по теме:

Программа угадывания случайно выбранных координат цели - C++
Составьте диалоговую программу угадывания случайно выбранных координат цели в квадрате: по оси х от 3 до 7, по оси у от -4 до 2 с пяти...

Выяснить, какие из прямых параллельны, а какие - нет - C++
Помогите пожалуйста с программой в dev c++. Условие: Даны уравнения прямых а1х+b1y=c1, a2x+b2y=c2, a3x+b3y=c3. Выяснить, какие из этих...

Разработать программу, сортирующую предложения текста по цели высказывания - C++
Помогите пожалуйста. Нужно написать программу, которая считывает текст из файла и выводит на экран сначала вопросительные, затем ...

Есть определенные цели. Подходит ли данный язык для того, чтобы их достигнуть? - C++
Начал с изучения Си, купив книгу для начинающих. О программировании немного знаю из школы ( Pascal, qBasic ). Книгу уже дочитываю. ...


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

Или воспользуйтесь поиском по форуму:
John Paramol
Сообщений: n/a
09.01.2007, 17:01     Какие цели использования ссылок в C++? #5
Вообще-то ссылка физически является обычным указателем (и ничем не отличается от него). Просто имеет поведение того объекта, на который она указывает. Т.е. мы думаем, что работаем с объектом, а на самом деле это указатель на него.
Зачем понадобилось ее включение в язык? Голуб пишет, что имитация Паскаля здесь не главное. Ссылки используются для задания паpаметpов, возвpащаемых значений, а также при пеpегpузке опеpаций. А направлено это все, как уже было сказано, на экономию ресурсов стека. Иногда ссылка может использоваться именно ради удобства работы с имитируемым объектом, а не с указателем.
Проблемы ссылок хорошо описаны в книге "Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming", Allen I. Holub.
Yandex
Объявления
09.01.2007, 17:01     Какие цели использования ссылок в C++?
Ответ Создать тему
Опции темы

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