Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 24.11.2015
Сообщений: 18
1

Указатели, Оператор взятия адреса

27.04.2016, 02:47. Показов 647. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вообщем, ребят, недавно разбирался с указателями в С++ и столкнулся с проблемой понимания следующих вопросов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Concat(string *str)
{
 
*str = "Name: "+(*str);
}
 
void Main()
{
....
string temp;
cin>>temp;
Concat(&temp);
}
и
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void Concat(string &str)
{
 
str = "Name: "+(str);
}
 
void Main()
{
....
string temp;
cin>>temp;
Concat(temp);
}

Что происходит в первом случае понятно: параметру передается по сути адрес аргумента. А что происходит во втором случае? Есть ли между ними разница? Пожалуйста, объясните подробнее. Заранее благодарен!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.04.2016, 02:47
Ответы с готовыми решениями:

Оператор взятия адреса
Доброй ночи, оператор взятия адресса не перечислен среди Special member functions, но он...

Оператор взятия адреса
struct A{}; в таком классе неявно объявлен 1 или 2 оператора взятия адреса(для константного и не...

Оператор взятия адреса (&)
while (true) { int *temp = new int(13); std::cout << temp << " "; std::cout << &temp...

Как мне избежать взятия адреса у аргумента функции?
Здравствуйте, написал код, который на одном компиляторе работает как надо, а на другом выдает...

1
Модератор
Эксперт по электронике
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,523
27.04.2016, 08:05 2
в первом случае аргумент указатель,сиречь адрес, во втором ссылка
читай, например, вот это
https://ru.wikipedia.org/wiki/Ссылка_(C%2B%2B)
http://www.programmersclub.ru/14/
ссылка это псевдоним
с точки зрения технологии, в грубом приближении, компилятор сам на себя берет затраты о взятии адреса и разыменовании
0
27.04.2016, 08:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2016, 08:05
Помогаю со студенческими работами здесь

Как работает операция взятия адреса "&"?
В каждой переменной есть адрес,так вот,когда операция взятия адреса берёт адрес,она его копирует?И...

Синонимы операций взятия адреса массива (arr и &arr)
возможно коряво написал заголовок, да и сам вопрос банальный. после создании лок. массива его адрес...

указатели и адреса.
Пользователь вводит с клавиатуры строку – предложение с пробелами и знаками пунктуации длиной до...

Адреса и указатели
Приветствую! Не могу понять, как работать с указателями и адресами для переменных. Если можно, как...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru