Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ найти максимальное значение угла в вершине шарового сектора а и соответствующие значение радиуса основания и высоты помогите пожалуйста решить задачу на С++. найти максимальное значение угла в вершине шарового сектора а(а изменяется от а1 до а2 с шагом б) и соответствующие значение радиуса основания r1 и высота... https://www.cyberforum.ru/ cpp-beginners/ thread905926.html Сдвиг элементов массива вправо и смена местами первого и последнего элемента C++
Есть массив с n-ным колличеством элементов. Нужно сдвинуть значение каждого элемента вправо на один, а первый и последний элемент поменять местами.
C++ Считывание чисел из файла Подскажите почему может быть такая ошибка "Expression (stream != NULL)". Мне нужно считать из файла числа записанные через пробел. Вот так делаю FILE *in; in=fopen("D:\\input.txt","r"); ... https://www.cyberforum.ru/ cpp-beginners/ thread905924.html C++ Ввод через cin нескольких чисел https://www.cyberforum.ru/ cpp-beginners/ thread905921.html
Здравствуйте. Требуется, чтобы пользователь ввел через запятую два числа. Используя scanf(), я бы написал примерно так: scanf("%d,%d", &var1, &var2); А как написать такую же вещь, используя cin...
сортировка массива выбором C++
программисты на ваш взгляд это правильный код? #include "stdafx.h" #include "iostream" #include "time.h" #include "iomanip" using namespace std; void ChoicesSort(int*, int); // объявление...
C++ Неразрешенная лексема https://www.cyberforum.ru/ cpp-beginners/ thread905887.html
//--------------------------------------------------------------------------- #include <dshow.h> //--------------------------------------------------------------------------- char * pcFileName =...
C++ В чем ошибка? программа с использованием контейнера list /*Написать программу,моделирующую управление каталогом в файловой сис* теме. Для каждого файла в каталоге содержатся следующие сведения: имяфайла,дата создания, количество обращений к файлу.... https://www.cyberforum.ru/ cpp-beginners/ thread905884.html runtime ошибка C++
Ребят, есть такой код, делал по учебнику Страуструпа. #include "std_lib_facilities.h" int area(int length, int width) { return length*width ; } int framed_area(int x, int y) { return...
C++ Задан массив,состоящий из n элементов.Подсчитать число членов,принадлежащих отрезку[a,b]. Задан массив,состоящий из n элементов.Подсчитать число членов,принадлежащих отрезку. https://www.cyberforum.ru/ cpp-beginners/ thread905868.html C++ Заполнение двумерного массива (матрицы) Необходимо реализовать заполнение двумерного массива (матрицы) по рисунку №9. Я смогла найти похожую, но там похожий рисунок №7, самой изменить не получается. Вот код для рисунка №7: #include... https://www.cyberforum.ru/ cpp-beginners/ thread905860.html
C++ Указатели. В массиве b(25), сформированном случайным образом
В массиве b(25), сформированном случайным образом, найти количество элементов, удовлетворяющих условию l<bi<m, где l и m - заданные числа.
C++ Составить блоксхему Пробовал через программу, которая сама делает схему по коду, но получилась фигня. Пробовал составить сам, получилось еще хуже. #include <stdio.h> #include <stdlib.h> #include <time.h> #define... https://www.cyberforum.ru/ cpp-beginners/ thread905832.html
1 / 1 / 0
Регистрация: 28.04.2012
Сообщений: 115
0

Перегрузка функций и операторов, почему программа не работает? - C++ - Ответ 4740150

18.06.2013, 20:31. Показов 1029. Ответов 1
Метки (Все метки)

Помогите пожалуйста разобраться почему не работает программа?

Создать класс 2-D координат. Определить операторы "+" и "-" как дружественные функции, а операторы присваивания и сравнения как методы класса. Должны быть возможность осуществления операций, как между координатами, так и между координатами и обычными числами.

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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
 
class Coord
{public:
        
int x;
int y;
 
    Coord()
    {cout<<"Input x: \n";
    cin>>x;
    cout<<"Input y: \n";
    cin>>y;
    }
    void out()
    {cout<<"x is: "<<x<<"\n";
    cout<<"y is: "<<y<<"\n";
    }
     friend Coord operator + (const Coord &ob1, const Coord &ob2);
    friend Coord operator + (Coord ob1, int ch);
    friend Coord operator - (Coord ob1, Coord ob2);
    friend Coord operator - (Coord ob1, int ch);
};
 
Coord operator + (Coord ob1, Coord ob2)
{Coord ob;
ob.x = ob1.x + ob2.x;
ob.y = ob1.y + ob2.y;
return ob;}
 
Coord operator + (Coord ob0, int ch)
{Coord ob1;
ob1.x = ob0.x + ch;
ob1.y = ob0.y + ch;
return ob1;}
 
Coord operator - (Coord ob1, Coord ob2)
{Coord ob;
ob.x = ob1.x - ob2.x;
ob.y = ob1.y - ob2.y;
return ob;}
 
Coord operator - (Coord ob1, int ch)
{Coord ob;
ob.x = ob1.x - ch;
ob.y = ob1.y - ch;
return ob;}
 
bool operator == (Coord ob1, Coord ob2)
{if ((ob1.x == ob2.x)&&(ob1.y == ob2.y))
return true;
else return false;}
 
bool operator != (Coord ob1, Coord ob2)
{if ((ob1.x != ob2.x)&&(ob1.y != ob2.y))
return true;
else return false;}
 
int main()
{Coord obj1;
Coord obj2;
 
if (obj1 != obj2) cout<<"obj1 ne raven obj2 \n";
else cout<<"obj1 ravno obj2 \n";
obj1 = obj2;
cout<<"obj1 and obj2 getting equal... \n";
if (obj1 == obj2) cout<<"Obj1 raven Obj2 \n";
else cout<<"Obj1 ne ravno Obj2 \n";
Coord obj3 = obj1+obj2;
cout<<"Summa Obj1 i Obj2 ravna: \n";
Coord obj3 = obj1+obj2;
obj3.out();
int k;
cout<<"Vvedite chislo kotoroe budet priplusovanno k Obj1: ";
cin>>k;
cout<<'\n';
Coord obj3 = obj1+k;
obj3.out();
Coord obj4 = obj2-obj1;
cout<<"obj2 - Obj1 = \n";
obj4.out();
cout<<"Vvedite chislo kotoroe budet otnyato ot Obj2: ";
cin>>k;
cout<<'\n';
obj4 = obj2 - k;
obj4.out();
}


Вернуться к обсуждению:
Перегрузка функций и операторов, почему программа не работает? C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2013, 20:31
Готовые ответы и решения:

Почему в коде не работает перегрузка операторов?
Почему не работает перегрузка? #include &lt;iostream&gt; #include &lt;vector&gt; using namespace...

Множественное наследование, Перегрузка функций, Перегрузка операторов, Использование дружественных функций и классов, Использование шаблонов классов
Здравствуйте!!! Я бы хотел попросить помоч решить...ну или скинуть примеры таких задач, если вдруг...

перегрузка операторов и функций
Помогите пожалуйста хотя бы разобраться что нужно сделать класс стринг с горем пополам готов а...

Перегрузка функций и операторов
Создать класс String – строку, используя динамическую память. Определить операторы &quot;+&quot; –сложение...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.06.2013, 20:31

АТД, перегрузка операторов и функций
Задание: 1. Реализовать (на основе лекционного материала) класс String, который представляет...

Перегрузка операторов с использованием функций-членов и укозателя *this
Из учебника я узнал, то что функция перегрузки операторов вызывается когда компилятор встретит...

Перегрузка операторов - Оба случая работают правильно, почему так?
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &quot;conio.h&quot; #include &quot;windows.h&quot; using...

Не работает перегрузка операторов шаблонного класса
помогите кто может разобрать что не работает( в понедельник екзамен, а я так туплю... все ошибки и...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru