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

Как лучше возвращать значение из операции-функции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задача.Игра в числа http://www.cyberforum.ru/cpp-beginners/thread392229.html
Вася очень любит играть в числа. Для этой игры нужна колода из N различных целых чисел от 1 до N. Эдик(который тоже очень любит эту игру) только что достал новую колоду. Вася с первого взгляда определил, что в колоде недостает одного числа. Зная N (количество чисел, которое должно быть в колоде) и S (сумму имеющихся чисел), помогите Васе определить, какого именно числа недостает. В первой...
C++ Иконка Всем привет !! ПОдскажите плизз как можно ехе файлу твоей программы можно задать иконку какую ты хочешь ? http://www.cyberforum.ru/cpp-beginners/thread392214.html
C++ периписать из Pascal в C++
перепишите пжлста 3 оч простыхпрограмки с паскаля на с++. сам в с++ вообще не разбираюсь, а по заданию требуют. тока перепишите алгоритм точь в точь как в паскале, если где то структура программы и кривая на ваш взгляд, оставьте как есть. 1я uses crt; var mas:array of integer; sum,i,n:integer; {i - index, n - kol-vo elementov} begin
C++ Рандом с исключением
Добрый день... подскажите пожалуйста..как сделать целочисленный рандом от 1 до N, но при этом чтобы в нём исключалось заданное число к примеру если заданное число = 3, а N = 9 то рандом должен проводится в диапазоне 1,2,4,5,6,7,8,9
C++ М-последовательности http://www.cyberforum.ru/cpp-beginners/thread392184.html
Доброе время суток! Подскажите пожалуйста кто может - как сформировать случайную последовательность нулей и единиц, с периодом , в которой 1023 символа. Заранее спасибо за внимание)
C++ Поиск и вывод слов начинающихся на 'l' {int i,j; char s,s1; cin.getline(s,255); for(i=0;i<255;i++) { if (s=='l') {j=i; while (s!=' ') {s1=s; i++; подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
26.11.2011, 15:14     Как лучше возвращать значение из операции-функции
Цитата Сообщение от frostua Посмотреть сообщение
В следующем коде при перегрузке оператора '+' функция возвращает ссылку на временный объект
Дело не в том, что лучше. Временный объект можно возвращать только по значению, иначе нельзя, так как после возврата из функции он просто не будет существовать. То, что тебя работает - иллюзия. Первое же передача управления после возврата, но перед использованием другому процессу и ты рискуешь следующим совпадением:
1 в одной странице с этим данным не будет ни каких других твоих данных,
2 тот процесс тоже вызовет функцию.
Всё, та функция твой экс-стек испортит. А если результат функции участвует в выражении с ещё какой нибудь функцией, то значение может испортить даже данный процесс, достаточно, если в следующей версии поменяется порядок вызова функций и та другая будет вызываться после, а не до. Причём, в исходнике отличие той версии может отстоять на тысячи строк. Или даже ты ничего вообще не менял, просто ещё раз запустил компиляцию, например, для релиза вместо дебага, а компилятор принял иное решение. Так делать вообще нельзя.
 
Текущее время: 16:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru