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

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

Войти
Регистрация
Восстановить пароль
 
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
#1

Как доказать, что при "а = b" на место "а" возвращается ссылка? - C++

14.11.2013, 18:48. Просмотров 422. Ответов 13
Метки нет (Все метки)

Нужно доказать что при "a = b" на место "а" возвращается именно ссылка... Натолкните на мысль, пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2013, 18:48     Как доказать, что при "а = b" на место "а" возвращается ссылка?
Посмотрите здесь:

Что делать с этой ошибкой: "LNK2019: ссылка на неразрешенный внешний символ _WinMain@16"? - C++
Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ _WinMain@16 в функции...

"Ссылка на неразрешенный внешний символ _main в функции" при сборке - C++
В чём может быть проблема и как её устранить! 1. LNK2019 ссылка на неразрешенный внешний символ _main в функции "int __cdecl...

Дано натуральное число. Верно ли, что цифра "a" встречается в нем реже, чем цифра "b"? - C++
Дано натуральное число. Верно ли, что цифра a встречается в нем реже, чем цифра b. Заранее спасибо

Что применить "\n" или "endl"? - C++
Эти две операции похожи - они переходят на новую строку. Но endl очищает буфер, но при этом дольше выполняется. Так что же лучше...

как сделать , что бы при вводе слова "Minsk" у меня выполнялось действие? - C++
Вообщем я не могу понять , как сделать , что бы при вводе слова "Minsk" у меня выполнялось действие?Мне нужно сделать так, что бы при вводе...

Ошибка при отображении русских шрифтов в консоли: "error LNK2019: ссылка на неразрешенный внешний символ" - C++
Доброго времени суток! решил модернизировать простенькую программу, чтобы отображался русский шрифт в консоли, делаю согласно книги, но не...

Как сделать execl("my", "arg", argv)? - C++
Пытаюсь сделать программу под linux. Нужен такой код, который бы запускал execl с двумя моими параметрами и всеми параметрами из argv кроме...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ПерС
371 / 287 / 89
Регистрация: 05.11.2013
Сообщений: 820
Записей в блоге: 5
Завершенные тесты: 1
14.11.2013, 19:15     Как доказать, что при "а = b" на место "а" возвращается ссылка? #2
если работают ужосы типа x=sqrt(a =2*x) или a=b=c то наверна так
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
14.11.2013, 19:20  [ТС]     Как доказать, что при "а = b" на место "а" возвращается ссылка? #3
Так то оно так, нужно конкретно(явно) доказать что возвращается именно ссылка...
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
14.11.2013, 19:22     Как доказать, что при "а = b" на место "а" возвращается ссылка? #4
ПерС
371 / 287 / 89
Регистрация: 05.11.2013
Сообщений: 820
Записей в блоге: 5
Завершенные тесты: 1
14.11.2013, 19:24     Как доказать, что при "а = b" на место "а" возвращается ссылка? #5
а как можно бы было присваивать по цепочке есди бы присваивание не возвращало ссылку на свой левый аргумент?
C++
1
2
x = y = z = 1;
x = (y = (z = 1));
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
14.11.2013, 19:26     Как доказать, что при "а = b" на место "а" возвращается ссылка? #6
Евгений Буланов, Вы хотите доказать,что a и b это один и тот же объект?
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
14.11.2013, 20:04  [ТС]     Как доказать, что при "а = b" на место "а" возвращается ссылка? #7
нет, нет... нужно было доказать что при "a = b" на место "а" возвращается именно ссылка

Добавлено через 39 секунд
ребята, благодарю всех, задачу решил!
ElenaBilyk
4 / 4 / 1
Регистрация: 22.10.2013
Сообщений: 34
14.11.2013, 20:09     Как доказать, что при "а = b" на место "а" возвращается ссылка? #8
Интересно как?))
Croessmah
Модератор
Эксперт CЭксперт С++
13057 / 7320 / 817
Регистрация: 27.09.2012
Сообщений: 18,066
Записей в блоге: 3
Завершенные тесты: 1
14.11.2013, 20:17     Как доказать, что при "а = b" на место "а" возвращается ссылка? #9
Цитата Сообщение от ElenaBilyk Посмотреть сообщение
Интересно как?))
C++
1
2
3
if ( &a == &b ) {
   //то a и b - это один объект
}
ПерС
371 / 287 / 89
Регистрация: 05.11.2013
Сообщений: 820
Записей в блоге: 5
Завершенные тесты: 1
15.11.2013, 10:10     Как доказать, что при "а = b" на место "а" возвращается ссылка? #10
Это, конечно, +
Но у ТС вроде речь шла о присваивании?
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
15.11.2013, 12:40     Как доказать, что при "а = b" на место "а" возвращается ссылка? #11
Цитата Сообщение от ПерС Посмотреть сообщение
Но у ТС вроде речь шла о присваивании?
присвоили, а потом сравнили.
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
15.11.2013, 12:57     Как доказать, что при "а = b" на место "а" возвращается ссылка? #12
Цитата Сообщение от metaluga145 Посмотреть сообщение
присвоили, а потом сравнили.
И что? Вопрос действительно странный.
Если сравнивать &a и &b, то с проверкой работы присваивания это не будет иметь ничего общего, т.к адреса а и б, которые тут сравниваются, по любому разные ибо а и б это 2 разных переменных!
Если уж замутить, что-то для проверки ссылки, возвращаемой оператором =,
То это должно быть как-то так:
C++
1
if (&a == &(a=b)  )
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
15.11.2013, 13:07     Как доказать, что при "а = b" на место "а" возвращается ссылка? #13
Kuzia domovenok, если честно, то вообще я не сильно понял изначальный вопрос Если Вы поняли вопрос, то объясните)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2013, 13:24     Как доказать, что при "а = b" на место "а" возвращается ссылка?
Еще ссылки по теме:

Префикс "пере" заменить на "при" - C++
Если слово начинается с префикса "пере", то заменить его на "при". ПОМОГИТЕ С КОДОМ ПОЖАЛУЙСТА

Что означает конструкция "!!" и "!!!"? - C++
Здравствуйте! Подскажите пожалуйста, как такое понимать ? #if !(!!CONFIG) и #if (!!CONFIG)

Как заменить функцию printf из "С" в "С++"? - C++
Я знаю, что саму функцию printf можно заменить функцией cout, но меня интересует как заменить то, что в скобках? printf("%4d",a); ...

Как сделать поле с "|", #, "-" и цифрами - C++
#include <iostream> // cin, cout #include <clocale> // поддержка русского языка #include <conio.h> // _getch() #include <stdlib.h>...

Как "захватить" окно и нажать "Ok"? - C++
Здравствуйте. На ПК сотрудниках устанавливаем программу, в конце выходит окошка и нужно нажать ок! как захватить данное окно и нажать...


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

Или воспользуйтесь поиском по форуму:
viktorius
2 / 2 / 2
Регистрация: 24.02.2013
Сообщений: 105
15.11.2013, 13:24     Как доказать, что при "а = b" на место "а" возвращается ссылка? #14
Я бы так доказал:
Если речь идет о об операторе присваивания который возвращает ссылку на объект, то при возвращении измененного или не измененного "а" конструктор копии вызываться не будет и диструктор тоже, потому что возвращается ссылка. Если возвращается не ссылка то вызывается конструктор для создания возвращаемого объекта и диструктор для уничтожения.

Может я немного ошибся, если так, прошу меня поправить.
Yandex
Объявления
15.11.2013, 13:24     Как доказать, что при "а = b" на место "а" возвращается ссылка?
Ответ Создать тему
Опции темы

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