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

почему нельзя в операторе + возвращать оригинальное значение(по ссылке), а не копию. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Путник двигался t1 часов со скоростью v1, затем t2 часов- со скоростью v2 и t3 часов со скоростью v3. За какое время он одолел первую половину пути http://www.cyberforum.ru/cpp-beginners/thread954534.html
Путник двигался t1 часов со скоростью v1, затем t2 часов- со скоростью v2 и t3 часов со скоростью v3. За какое время он одолел первую половину пути.
C++ Составить программу по предложенному условию: "Можно ехать со скоростью Составить программу по предложенному условию: "Можно ехать со скоростью v1 км/ч и оплатой р1 руб./км либо идти пешком со скоростью v2 км/ч бесплатно. Как с наименьшими затратами преодолеть путь S за t мин. если это возможно? Какие будут затраты? http://www.cyberforum.ru/cpp-beginners/thread954532.html
C++ Двунаправленный линейный список
Нужно сделать из двунаправленного линейного списка, циклический и найти ср. аримфетическое. Мои попытки сделать двунаправленный циклический список не увенчались успехом. #include<stdio.h> #include<stdlib.h> #include<math.h> const int n=5;//кол-во элементов struct List//структура {int data; List *next,*prev;};
Почему программа компилится, хотя компилиться не должна? C++
#include <windows.h> #include <stdio.h> using namespace std; class foo { public: foo () {} };
C++ Не понятно с const_cast http://www.cyberforum.ru/cpp-beginners/thread954520.html
Адрес один и тот же, а значения разные, как так? #include <iostream> int main() { const double pi = 3.14159265; double* ip; ip = const_cast<double*>(&pi); std::cout << ip << " " << *ip << std::endl;
C++ Отключения/включения alt+enter Привет, как программно отключить и включить виндовской хот-кей alt+enter ? подробнее

Показать сообщение отдельно
SummerRain
326 / 325 / 17
Регистрация: 16.12.2012
Сообщений: 544
14.09.2013, 22:25
Смотри, у тебя уже есть конструктор, который принимает массив и размер массива.
И чтобы создать новый объект, который получается при сложении, достаточно просто вычислить размер этого нового массива, выделить под него память и присвоить нужные значения его элементам.
И все: создаем новый элемент с помощью этого конструктора, как ты это уже делал в функции main()
Set <int> intSet1(array2, 5);
В теле оператора + мы тоже создаем временный объект из нового массива и его размера
Set<T> result(result_array, pow);
и возвращаем его.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru