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

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

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

переопределение операции сложения вычетания сравнения - C++

22.05.2013, 22:25. Просмотров 529. Ответов 1
Метки нет (Все метки)

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

Нужно вместо операции сложения написать операцию сравнения временных интервалов - C++
#include "Time.h" #include <iostream> #include <conio.h> using namespace std; class Time { int min, sec; public: ...

Создайте класс Время, в котором реализованы операции сложения, вычитания, сравнения, ввода и вывод на экран - C++
Задание было такое: Создайте класс Время, в котором реализованы операции сложения, вычитания, сравнения, ввода и вывод на экран... Вот...

Перегрузить операции сравнения комплексных чисел и операции потокового вывода - C++
Создать класс комплексное число. Перегрузить операции сравнения комплексных чисел! =, ==,>, <,> =, <= И операции потокового ввода-вывода. ...

Переопределение операций сложения, инкремента - C++
Лабораторная работа 2 Тема: Переопределение операций. Дружественные функции. Задания на лабораторную работу Для класса из лаб....

Переопределение операции [] - C++
В классе строка переопределить операцию , которая будет возвращать символ по индексу, который передан в квадратные скобки. Помогите, не...

Переопределение операции инкремента - C++
Добрый вечер! Задачка простая и кода с примерами в сети куча, но меня волнует вопрос почему компилятор ругается на мой код: Myclass...

1
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3142 / 307
Регистрация: 04.12.2011
Сообщений: 8,672
Записей в блоге: 5
23.05.2013, 03:16 #2
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
#include <iostream>
#include<string>
using namespace std;
class GD_sostav{
static const int maxVagons=100;
static const int minVagons=1;
int numberOfvagons;
void aLittleOfVagons();
void aLotOfVagons();
void err(char *errMess);
public:
GD_sostav():numberOfvagons(1){};
GD_sostav(int toSet){setVags( toSet);};
void setVags(int toSet);
int getVags();
GD_sostav operator+(GD_sostav& toAdd);
GD_sostav operator-(GD_sostav& toAdd);
bool operator==(GD_sostav& toAdd);
bool operator==(int toAdd);
bool operator>(GD_sostav& toAdd);
bool operator>(int toAdd);
bool operator<(GD_sostav& toAdd);
bool operator<(int toAdd);
};
void GD_sostav::err(char *errMess){
cout<<errMess<<endl;
system("pause");
exit(1);
}
void GD_sostav::setVags(int toSet){
if(toSet>maxVagons)return err("Так много вагонов прицепить нельзя!");
if(toSet<minVagons)return err("Так много вагонов украсть нельзя!");
numberOfvagons=toSet;
}
int GD_sostav::getVags(){return numberOfvagons;}
GD_sostav GD_sostav::operator+(GD_sostav& toAdd){
return GD_sostav(numberOfvagons+toAdd.numberOfvagons);
}
GD_sostav GD_sostav::operator-(GD_sostav& toAdd){
return GD_sostav(numberOfvagons-toAdd.numberOfvagons);
}
bool GD_sostav::operator==(GD_sostav& toAdd){return numberOfvagons==toAdd.numberOfvagons;};
bool GD_sostav::operator==(int toAdd){return numberOfvagons==toAdd;};
bool GD_sostav::operator>(GD_sostav& toAdd){return numberOfvagons>toAdd.numberOfvagons;};
bool GD_sostav::operator>(int toAdd){return numberOfvagons>toAdd;};
bool GD_sostav::operator<(GD_sostav& toAdd){return numberOfvagons<toAdd.numberOfvagons;};
bool GD_sostav::operator<(int toAdd){return numberOfvagons<toAdd;};
int main()
{
setlocale (LC_CTYPE, "Russian");
int intVar;
cout<<"Ввeдите количество вагонов в первом составе 1...100 ";
cin>>intVar;
cout << endl;
GD_sostav frst(intVar);
cout<<"Ввeдите количество вагонов во втором составе 1...100 ";
cin>>intVar;
cout << endl;
GD_sostav secnd(intVar);
if(frst>secnd)cout<<"Первый больше на "<<(frst-secnd).getVags()<<" вагонов";
if(frst<secnd)cout<<"Первый меньше на "<<(secnd-frst).getVags()<<" вагонов";
if(frst==secnd)cout<<"Первый и второй равны";
cout << endl;
cout<<"Kоличество вагонов в третьем составе: первый + второй ";
GD_sostav thrd=frst+secnd;
cout<<thrd.getVags();
cout << endl;
system( "pause" ); 
return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2013, 03:16
Привет! Вот еще темы с ответами:

Переопределение операции присваивания - C++
Есть вот такой класс: #ifndef cd_h #define cd_h class Cd { private: char* performance; char* label; int selections;

Переопределение операции присваивания - C++
В случае, когда в классе есть члены, память под которые выделяется динамически, операцию присваивания, как и конструкторы с деструкторами...

Переопределение операции: постфиксный унарный + - C++
Привет. Делаю переопределение операции для стека, нужно сделать постфиксный +, как добавление нового элемента. stack&amp; operator+() { ...

Переопределение операции вычитания строк - C++
Нужно переопределить операцию вычитания строк. То есть из первой строки вычитаются все символы,содержащиеся во второй строке. Я...


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

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

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