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

Перегрузка оператора == - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напечатать таблицу значений функции f(x) и суммы S(x) через do while http://www.cyberforum.ru/cpp-beginners/thread407764.html
через do while!!!!!! Напечатать таблицу значений функции f(x) и суммы S(x) в виде таблицы. N X F(x) S(x) <<<<<<========представте это таблицей) включая 1 1 Х изменяется в диапазоне...
C++ Реализовать массив обьектов для хранения и действия для обработки элементов массива. Реализовать массив обьектов для хранения и действия для обработки элементов массива. Результаты сессии.Подсчет среднего балла по группе и определение максимального. http://www.cyberforum.ru/cpp-beginners/thread407744.html
Ошибка при выполнении. C++
выскакивает ошибка при выполнении - drawing operation was attempted when there was no current window. #include <conio.h> int main() { while (1) { if (kbhit()) break;...
C++ Распознавание простоты
Привет всем! у кого нибудь есть прога По распознаванию простоты числа(Полиномиальный тест распознания простоты)??? заранее спасибо!
C++ Сортировка списка http://www.cyberforum.ru/cpp-beginners/thread407728.html
Всем привет) Нужно реализовать сортировку списка, линейного однонаправленного. Написал, но что-то как-то не правильно... void sort_train(Train *head) { Train *buf; bool change;
C++ Использование различных свойств наследования для расширения и уточнения классов Помогите решить задачу Среди представленных понятий,( квитанция, накладная, документ, чек), выбрать самое общее, на основе которого будет строиться родительский класс. Исходя из остальных... подробнее

Показать сообщение отдельно
toshka1993
0 / 0 / 0
Регистрация: 23.11.2015

Перегрузка оператора == - C++

14.12.2011, 23:39. Просмотров 361. Ответов 1
Метки (Все метки)

нужно сравнить
1) объект класса abc с объектом класса abc1
2) объект класса abc с другим объектом класса abc
3) объект класса abc1 с объектом класса abc
не используя виртуальности

1) и 2) я написала, а над третьим голову ломаю=(
может кто знает, как можно такое сделать?
(пишу в Visual Studio)

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
 
class abc1
{
public:
int a, b;
 
abc1() { a=0; b=0; }
abc1( int i, int j) { a=i; b=j; }
//  bool operator == (const abc & op1);
};
 
 
class abc
{
public:
int x, y;
 
abc() { x=0; y=0; }
abc( int i, int j) { x=i; y=j; }
abc operator+ (abc op1);
bool operator == (const abc & op1);
bool operator == (const abc1 & op2);
};
 
abc abc:: operator+ (abc op1)
{
abc temp;
temp.x = x + op1.x;
temp.y = y + op1.y;
return temp;
}
 
 
 
 
bool abc :: operator==(const abc & op1) 
{
return x == op1.x && y == op1.y;
}
 
bool abc :: operator==(const abc1 & op2) 
{
return x == op2.a && y == op2.b;
}
 
bool abc :: operator==(const abc1 & op2) 
{
return op2.a == x && op2.b == y;
}
 
void main()
{
abc o1(10,10), o2(5, 3), o3, o4(10, 10);
o3 = o1+o2;
abc1 o5(10, 10);
abc1 o6(4,6);
 
cout <<"o1 + o2 = \n"<< "x = " << o3.x << ", y = " << o3.y <<"\n\n";
 
if(o1 == o2) cout << "o1 ravno o2\n";
else cout << "o1 ne ravno o2\n";
 
if(o1 == o5) cout << "o1 ravno o5\n";
else cout << "o1 ne ravno o5\n";
 
if(o5 == o1) cout << "o5 ravno o1\n";
else cout << "o5 ne ravno o1\n";
 
if(o1 == o6) cout << "o1 ravno o6\n";
else cout << "o1 ne ravno o6\n";
 
getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru