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

От каких ошибок страхует Const при перегрузке оператора присваивания - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Почему при запуске программы в командной строке иероглифы http://www.cyberforum.ru/cpp-beginners/thread1235976.html
Привет! Подскажите, почему при запуске программы в командной строке иероглифы?
C++ Ошибка при создании шаблонной функции:"error C2075: temp: для инициализации массива требуются фигурные скобки" template <typename T> int GnomeSort(T* p, int length) { int i, count; i = 0; count = 0; while(i < length) { if(i == 0 || p >= p) ++i; http://www.cyberforum.ru/cpp-beginners/thread1235956.html
C++ Решение СНАУ методом Ньютона
Нужно написать программу для решения систем нелинейных алгебраических уравнений методом Ньютона. Наибольшая сложность заключается в том что на время запуска программы не ясно сколько будет этих уравнений и сколько будет неизвестных. Сам метод Ньютона я понимаю, а вот как это всё реализовать слабо представляю, так как с программированием знаком поскольку-постольку, а программа нужна для научной...
C++ Проверка double на NaN и Infinity
Как лучше проверить дабл на нотенамбер или бесконечность?
C++ Динамическое создание переменных http://www.cyberforum.ru/cpp-beginners/thread1235890.html
Есть строка введённая с клавиатуры пользователем, к примеру такая: "a+b+c", как создать динамические переменные, допустим типа int a, b, c?
C++ Описание заголовочного файла synchapi.h сабж Нужно на русском. Есть такие ресурсы? Всё облазил... подробнее

Показать сообщение отдельно
CyberSolver
 Аватар для CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 686
Записей в блоге: 1
30.07.2014, 18:14     От каких ошибок страхует Const при перегрузке оператора присваивания
Vourhey, Владимир_1994, это есть у Алена Голуба (правило 124).
Кликните здесь для просмотра всего текста
Наконец, operator=() должен возвращать ссылку на константу
просто потому, что не хотите, чтобы кто-нибудь имел возможность
модифицировать возвращенный объект после того, как произошло
присваивание. Следующее будет недопустимым в случае возврата ссылки
на константу:
(x = y) = z;


Есть негласное правило - пользовательский тип должен обеспечивать поведение, как встроенные типы.
Да, но это именно правило. Причем писать (x = y) = z; - это совсем уже конченый идиотизм, и здесь мне по барабану на поведение встроенных типов.

Не по теме:

Если можно запретить писать меньше дури - пусть уж лучше так. Хотя тут же набигут толпы "профессионалов", которым эта вещь была не нужна, но после запрета вдруг резко понадобилась.

 
Текущее время: 11:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru