Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.11.2012, 23:44   #1
Arrioh
Пользователь
 
Регистрация: 25.03.2012
Сообщений: 60
Печаль Перегрузка << и >>

Что-то не правильно делаю. Компилятор пишет:" Отсутствие оператора << соответствующим операндам" Вот код:
Код:
#ifndef COM_H
#define COM_H
#include <iostream>


class complex
{
private:
	double real;
	double imag;
public:
	complex();
	complex(const double _real, const double _imag);

	friend complex operator+(const complex & c1, const complex & c2);
	friend complex operator-(const complex & c1, const complex & c2);
	friend complex operator*(const complex & c1, const complex & c2);
	friend std::ostream & operator<<(const std::ostream & os, const complex & c1);
	friend std::ostream & operator>>(const std::ostream & os, const complex & c1);
};


#endif
Код:
#include "complexO.h"

complex::complex()
{
}
complex::complex(const double _real, const double _imag)
{
	real =_real;
	imag =_imag;
}
complex operator+(const complex & c1, const complex & c2)
{
	complex temp;
	temp.real = c1.real + c2.real;
	temp.imag = c1.imag + c2.imag;
	return temp;
}
complex operator-(const complex & c1, const complex & c2)
{
	complex temp;
	temp.real = c1.real - c2.real;
	temp.imag = c1.imag - c2.imag;
	return temp;
}
complex operator*(const complex & c1, const complex & c2)
{
	complex temp;
	temp.real = c1.real * c2.real;
	temp.imag = c1.imag * c2.imag;
	return temp;
}
 std::ostream & operator<<(const std::ostream & os , const complex & c1)
 {
	os << c1.real << ", " << c1.imag;
	 return os;
 }
std::ostream & operator>>(const std::ostream & os, const complex & c1)
{
	os >> c1.real; 
	cout << endl;
	os >> c1.imag;
	return os;
}
Arrioh вне форума Ответить с цитированием
Старый 02.11.2012, 23:48   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Поток не должен быть const.
Abstraction вне форума Ответить с цитированием
Старый 02.11.2012, 23:54   #3
Arrioh
Пользователь
 
Регистрация: 25.03.2012
Сообщений: 60
По умолчанию

Я дибил. спс. Тема закрыта)
Arrioh вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перегрузка в С++ cj_loman Помощь студентам 0 19.05.2011 04:54
перегрузка [] zhenya.ya Общие вопросы C/C++ 0 10.04.2011 23:44
Перегрузка (С++) RodionL3 Помощь студентам 1 22.04.2010 10:48
перегрузка DRELORD Помощь студентам 1 22.04.2010 09:54
Перегрузка ++ counter Общие вопросы C/C++ 3 20.12.2008 13:30