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

Перегрузка операторов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ перегнать с C++ на C# http://www.cyberforum.ru/cpp-beginners/thread237599.html
имеется int CMyPaintDC::AreaLines(int x,int y,int dir,int d,int PrevXL, int PrevXR,COLORREF col_g,COLORREF col_f) { int xL,xR,y1,fl; COLORREF cc=RGB(255,255,255); xL=x; xR=x; do{
C++ visual с++ Можете порекомендовать хорошоую ссылку на visual с++ 2008 или 2010. именно нужен с++ а не studio?? помогите, очень нужно! http://www.cyberforum.ru/cpp-beginners/thread237588.html
C++ много вопросов о вводе-выводе
Здравствуйте, законченный дельфист решил переехать... вопросов куча, просьба ответить. 1) много вариантов ввода вывода, например сравниать <<, >> и scanf printf по сути они аналогичны? Считается ли каой-то вариант более выгодным или красивым? 2) зачем в scan и print дополнительно указывать тип, если он уже задан при объявлении переменой. 3) при объявлении int a=0; int a={0} ; эти две...
C++ Как в цикле цвеличить величину шага
стандартный цикл увеличивает переменную на 1 пример for(i=0; i<5; i++) i++ увеличивает переменную на единицу. А как сделать чтобы i увеличивалась скажем на 4 в каждом проходе цикла ? знаю можно в теле цикла написать i=i+3;
C++ Сумма цифр натурального числа http://www.cyberforum.ru/cpp-beginners/thread237522.html
Нужна помощь по следующей задаче: {Дано натуральное число. Найдите сумму цифр данного числа. Написать рекурсивную функцию} Смотрел в многих разделах с рекурсивной функцией ничего не нашел Тема "Задачи для тренировки и лучшего понимания" *не* предназначена для решения задач новичков; Для решения своих задач создавайте новые темы.
C++ Комментарии к строкам Плиз напишите коменты к строкам задачи,какая строка что делает и для чего нужна.в кратце. Сам смысл задачи.надо сложить 2ва 50значных 10тичных числа. #include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> #define LENGTH 50 int get_cnt_digit(int a) { подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
03.02.2011, 13:55     Перегрузка операторов
Native, при сложении ссылку возвратить не получится (в большинстве случаев, если действительно у вас операция "+" будет означать сложение), поскольку зачастую чтобы сложить два объекта, нужно создать временный объект, в который положится сумма этих двух переданных объектов. Поскольку объект создан внутри функции, т.е. является локальным, ссылку на него возвратить нельзя (ведь по выходу из функции он будет уничтожен), поэтому нужно возвращать значение, т.е. при выходе сначала объект будет скопирован в место вызова функции, а затем уничтожен.
А вот += может возвращать и ссылку, потому как результатом операции будет уже существующий объект, находящийся слева от += (т.е. по сути *this), вот ссылку на него и надо возвращать.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru