С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
 Аватар для AnonymC
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390

передать ссылки как параметры

16.03.2010, 22:13. Показов 1030. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
народ объясните для чего они нужны,ссылки как параметры,или же указатели,в книге прочел не дошло
если у кого есть книга С++ за 21 день то это страница 239
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.03.2010, 22:13
Ответы с готовыми решениями:

Как передать параметры компилятору?
В ручном режиме это решается так: 1) Открываю командную строку Visual Studio 2017 2) Прописываю нужную команду для компиляции файла,...

Как передать параметры в main ?
нужно передать параметры с командной строки в основную функцию. например я хочу найти cos(x). как задать и передать значение параметра X...

Как передать параметры через ShellExecute - C++
Приветствую Как передать строку и число через ShellExecute? SHELLEXECUTEINFO ShExecInfo = { 0 }; ShExecInfo.cbSize =...

6
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
16.03.2010, 22:21
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
void f1(int &a);   //функция может изменить значение переданного объекта
void f2(int a);    //функция не может изменить значение переданного объекта
int main(){
int p1 = 10;
f1(p1);        //равносильно оператору a = p1 локальная ссылка инициализируется
cout<<p1;   //вывод 11 значение переданного по ссылке объекта изменилось.
cout<<'\n';
f2(p1);        //равносильно оператору a = p1 инициализиуется локальная переменная. 
cout<<p1;   //значение всё равно останется 11
cout<<'\n';
 
 
return 0;
}
 
void f1(int &a){
a++;
}
void f2(int a){
a++;
}
1
 Аватар для AnonymC
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
16.03.2010, 23:15  [ТС]
Genius Ignat, ого..доступ к локальным данным Оо

Добавлено через 15 секунд
ладно а тогда плюс в чем

Добавлено через 33 секунды

Не по теме:

ладно,и еще вопрос,лучше создавать объекты в дин.памяти или в стеке?

0
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
16.03.2010, 23:24
/* Преимущество перед передачей по указателю: не надо использовать & при вызове и * для обращения к памяти.*/
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
void f1(int &a);   
void f2(int *a);   
int main(){
int p1 = 10;
f1(p1);       
cout<<p1;   
cout<<'\n';
f2(&p1);      
cout<<p1;   
cout<<'\n';
 
return 0;
}
 
void f1(int &a){
a++;
}
void f2(int *a){
(*a)++;
}
Что красивее мне неизвестно мне всё фиолетово кому как читаемо мне и с указателем прёт.

Добавлено через 4 минуты
ладно,и еще вопрос,лучше создавать объекты в дин.памяти или в стеке?
За д.памятью следить надо, и надо быть аккуратным...
Ну ты понял в какую сторону намек.


Большие массивы надо создавать в д.памяти.
1
Эксперт С++
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
16.03.2010, 23:26
Указатель может указывать "в никуда" (NULL) и "пальцем в небо" (куда-то.... где объекта нет и никогда не было). Ссылка всегда в момент ее создания ссылается на заведомо существующий объект.
0
 Аватар для AnonymC
1183 / 468 / 87
Регистрация: 23.06.2009
Сообщений: 6,390
16.03.2010, 23:28  [ТС]
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Ну ты понял в какую сторону намек.
ну да...но большая разница есть?Если аккуратность,то для меня это пустяк
0
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
16.03.2010, 23:32
CheshireCat:
Ссылка может и ссылаться и на NULL/
Может:
Из книги Майрса.
НУ чтобы это было надо умудриться
char *pc = 0;
char &rc =*pc;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.03.2010, 23:32
Помогаю со студенческими работами здесь

Как в Dev C++ передать параметры командной строки
Мне необходимо данные брать из файла. Путь к файлу нужно передавать как параметр командной строки argv. Подскажите пожалуйста как это...

Как в функцию обработки сообщений передать параметры?
Как в функцию обработки сообщений типа void CMathematicsView::OnResultButton() передать параметры? Как и где написать прототип и...

Как передать параметры конструктора одного класса другому?
Скажите пожалуйста, как это должно работать? Как передать параметры конструктора одного класса другому? #include &lt;iostream&gt; ...

как с помощю ссылки передать с функции значение F
как с помощю ссылки передать с функции значение F (строка21-22) в main на вывод(строка51) вместо X?? #include&lt;iostream&gt; ...

Параметры-ссылки
Плиз, киньте какую-нибудь простенькую прогу, исп. параметры-ссылки!


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru