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

Перегрузка оператора присваивания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить все вхождения символов из строки http://www.cyberforum.ru/cpp-beginners/thread1518380.html
как удалить вхождение всех точек в строку, стандартными средствами, без цикла написанного вручную. Я сделал так но это не правильно find после каждого удаления будет заново проходить по строке ...
C++ Ссылки на объект и мультипоточность Такая проблема: есть два потока и глобально объявленная ссылка на объект, когда я инициализирую её в одном потоке, во втором она остаётся пустой(дебаггер показывает NULL), хотя я её не объявлял как... http://www.cyberforum.ru/cpp-beginners/thread1518359.html
C++ Освобождение памяти динамически созданных объектов
Подскажите, есть к примеру три класса: Class1, Class2, Class3. В Class2 имеется метод, в котором динамически создаю объекты класса Class1 и записываю в vector<Class1*>, а в Class3 динамически...
C++ Перегрузка операторов приведения типов
Доброго времени суток! Возник вопрос по перегрузке оператора преобразования типа const char*. Вот пример: class Integer { public: Integer():value(0){} void setValue(int v){value = v;} int...
C++ Указывает на ошибку-переменную http://www.cyberforum.ru/cpp-beginners/thread1518320.html
Подскажите пожалуйста какая ошибка в этом коде программы: #include <cstdlib> #include <iostream> using namespace std; const int N=100; int main(int argc, char *argv) { double x,q,s=0; ...
C++ Создание статической библиотеки в DEV C++ Прошу помочь мне с созданием статической библиотеки в DEV C++. В общем, я попытался создать ее через проект. В проект входят заголовочный файл и файл реализации (как необходимо). Собрал проект.... подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4396 / 3239 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
22.08.2015, 15:19
Цитата Сообщение от Duracell Посмотреть сообщение
В каких случаях возвращаемое значение сыграет роль?
Очевидно, в тех случаях, когда приходится это значение использовать.
Один из вариантов уже привел rikimaru2013. Это организация цепочек вызовов (как например используется с перегруженными операторами << и >> в потоках ввода/вывода).

Другой вариант может быть например при использовании присваивания в условном выражении (if, while):
C++
1
if( a = b ) ...
При наличии соответствующего преобразования в bool конечно же.
C++
1
2
3
4
5
6
7
8
9
10
struct S {
    S& operator= (const S& other) { return *this; }
//    void operator= (const S& other) { }
    explicit operator bool() const { return true; }    
};
 
int main()  {
    S s1,s2;
    if( s1 = s2 ) {}
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru