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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Will7
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 7
#1

Перегрузка (бинарный, дружественный оператор) - C++

25.05.2013, 20:29. Просмотров 430. Ответов 9
Метки нет (Все метки)

В классе Ellipse перегрузить оператор - (бинарный, дружественный оператор)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2013, 20:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перегрузка (бинарный, дружественный оператор) (C++):

Перегрузка, дружественный функции - C++
Всем привет сразу к делу. Вроде бы всё просто , перегрузка ... Просче показать чем объяснить. Ниже не замысловатый код, перегружены...

дружественный оператор для вектора - C++
всем доброго времени суток хедер friend vector operator + (const vector& v, const vector& w ); friend vector...

Дружественный оператор не видит закрытые члены класса - C++
angle.h: #pragma once #include <iostream> using std::ostream; class Angle { friend ostream& operator<<(ostream& out, Angle...

Где мы можем использовать, дружественный оператор сложения? - C++
Где мы можем использовать, дружественный оператор сложения,почему нельзя воспользоваться перегрузкой оператора в классе,Зачем усложнять?

Бинарный оператор не найден - C++
Класс пишу. в функции main() с помощью оператора cout пытаюсь вывести информацию. Выдает ошибка какая то Вот файл с main() ...

Перегрузка оператор ввода - C++
Перегрузите оператор ввода >> вводящий дробь. Вводится числитель, после чего проверяется, если следующий символ - /, то читается также...

9
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
25.05.2013, 20:49 #2
Класс Ellipse-то предоставьте.
0
Will7
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 7
25.05.2013, 21:14  [ТС] #3
C++
1
2
3
4
5
class Ellipse :public Point
{int a,b;
Point* Center;
 public: Ellipse () {a=b=0;}
};
0
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
25.05.2013, 21:30 #4
Не представляю, что там у Вас в Point содержится, посему код только для a и b:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Ellipse :public Point
{
    int a,b;
    Point* Center;
public: 
    Ellipse () {a = b = 0;}
    Ellipse(int _a, int _b): a(_a), b(_b) {}
    friend Ellipse operator - (const Ellipse&, const Ellipse&); 
};
 
Ellipse operator - (const Ellipse &obj1,const Ellipse& obj2)
{
    return Ellipse(obj1.a - obj2.a, obj1.b - obj2.b);
}
1
Will7
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 7
25.05.2013, 22:23  [ТС] #5
не подскажите как реализовать вывод в int main
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
25.05.2013, 22:29 #6
Will7, Шо за вывод в int main? Просто в программе запиши
C++
1
2
3
4
5
6
7
int main()
{
//тута свой код пиши и все
....
//конец своего кода
return 0;
}
0
Will7
0 / 0 / 0
Регистрация: 09.05.2013
Сообщений: 7
25.05.2013, 22:40  [ТС] #7
вывод через cout<<object1<<object2;
не получается вывести, ошибки
0
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
25.05.2013, 22:49 #8
Цитата Сообщение от Will7 Посмотреть сообщение
вывод через cout<<object1<<object2;
Можно перегрузить оператор вывода в поток, основываясь на коде BumerangSP (часть с Point не учитывается, не знаю, что там):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Ellipse :public Point
{
    int a,b;
    Point* Center;
public: 
    Ellipse () {a = b = 0;}
    Ellipse(int _a, int _b): a(_a), b(_b) {}
    friend Ellipse operator - (const Ellipse&, const Ellipse&); 
    friend std::ostream & operator <<(std::ostream &, Ellipse const&);
};
 
Ellipse operator - (const Ellipse &obj1,const Ellipse& obj2)
{
    return Ellipse(obj1.a - obj2.a, obj1.b - obj2.b);
}
 
std::ostream & operator <<(std::ostream & ostream, Ellipse const& ellipse) {
   ostream << '(' << ellipse.a << ", " << ellipse.b << ')' << std::endl;
   return ostream;
}
1
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
25.05.2013, 22:49 #9
Will7, перегрузи operator <<();
0
gray_fox
25.05.2013, 22:52     Перегрузка (бинарный, дружественный оператор)
  #10

Не по теме:

Вообще, не советовал бы наследовать эллипс от точки...

1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2013, 22:52
Привет! Вот еще темы с ответами:

Перегрузка операторов, оператор присваивания - C++
Перегрузка операторов, запутано-намутано #include &quot;stdafx.h&quot; #include &quot;conio.h&quot; #include &lt;iostream&gt; using namespace::std; ...

Ошибка C2679: бинарный '=': не найден оператор, принимающий правый операнд типа 'double' - C++
// ConsoleApplication2.cpp : Defines the entry point for the console application. // #include &quot;stdafx.h&quot; #include &quot;math.h&quot; ...

Оператор суммирования (классы, перегрузка операторов) - C++
#include &lt;iostream&gt; class mat { public: mat() { var = 0; } mat(int a) { var = a; } ~mat() { } void set(int b) { var =...

ООП, заполнение 0-ми вместо от 0 до 10, оператор + (перегрузка) не срабатывает - C++
Не правильно работает заполнение матрицы, заполняется только 0-ми. Не срабатывает оператор + Помогите разобраться и научиться.... ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
25.05.2013, 22:52
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru