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

Классы,перегрузка. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать прокси. http://www.cyberforum.ru/cpp-beginners/thread366860.html
Всем привет.В качестве дополнительного задания было получено написать прокси.Сам изучаю с/с++.Если я правильно понимаю это задание связано с сетевым программированием,с чем пока я ещё не...
C++ Программка Всем привет ;) Помогите состовать небольшую программку на c++.Задачка про автобусы)) Даны 3 вида автобуса. 1-MS Sprinter Масса-3 тонны мощность-300000 вместительность-менее 25 человек ... http://www.cyberforum.ru/cpp-beginners/thread366844.html
C++ Вводится 10 чисел. Определить, есть ли среди них число 13
Я первый раз сдесь.Необходимо выполнить задачу:"Вводится 10 чисел. Определить, есть ли среди них число 13".Вот код, у меня всегда пишет что в данной последовательности имеется число 13, даже если его...
Перегрузка оператора + C++
Помогите с перегрузкой оператора +. Нужно сложить два объекта - двумерные массивы. сArray operator + (сArray &arr) { int size = arr.getSize(); cArray temp(size); for( int i = 0; i <...
C++ как вообще это сделать? http://www.cyberforum.ru/cpp-beginners/thread366827.html
проверить можно ли в пятеричную запись числа х вставить цифру 4 так чтобы оно стало степенью 2?
C++ битовые операции не понимаю вообще функция изменяет старший байт числа на заданное значение не изменяя младший байт пожалуйста помогите подробнее

Показать сообщение отдельно
Rexer
163 / 162 / 20
Регистрация: 10.10.2010
Сообщений: 725

Классы,перегрузка. - C++

15.10.2011, 21:16. Просмотров 1711. Ответов 4
Метки (Все метки)

Всем привет!
Делаю класс комплексных чисел,появился вопрос.
Весь класс писать смысла нет,вопрос не в этом.
Вот он класс:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Cplex
{
    public:
    double re;
    double im;
    //Конструкторы
    Cplex () {}
    Cplex (double r) {re = r; im = 0;}
    Cplex (double a,double b) {re = a; im = b;}
//Перегружаем операторы
/*Если писать вот так,то у меня выдается ошибка.*/
Cplex operator + (Cplex a,const Cplex b)
{
     a.re += re + b.re;
     b.im += im + b.im;
 
return a;
}
}
int main()
{
Cplex z1(1,3);
Cplex z2(2,3);
Cplex z3 = z1+z2;
cout << z3.re << " " << z3.im;
}
В итоге выходят ошибки о том,что Cplex operator + (Cplex a,const Cplex b) must take either zero or one argument и no match for operator - in z1 - z2

В связи с этим у меня вопрос.
Через почему такое?
Если делать так,то все тип-топ
C++
1
2
3
4
5
6
7
8
9
Cplex operator + (Cplex &c) // перегрузка оператора сложения
        {
                Cplex temp;
 
                temp.re = re + c.re;
                temp.im = im + c.im;
 
                return temp;
        }
Прошу вашей помощи.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru