Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Создание двумерного массива http://www.cyberforum.ru/cpp-beginners/thread1134289.html
int Mass_create() { for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { mas = rand() % 198 - (99); } } return **mas;
C++ Ошибка отображения шашки Зачем множите темы? Вот Ваша исходная тема http://www.cyberforum.ru/cpp-beginners/thread1134216.html http://www.cyberforum.ru/cpp-beginners/thread1134283.html
Подключение к текстовому файлу C++
Ребят, подскажите пожалуйста. у меня есть программа которая должна считывать с текстового файла фамилии. Фамилии написаны на русском языке, а когда в консоли ввожу русские буквы, мне пишет что нет таких имён. как сделать так, чтобы русские буквы консоль считывала из файла?
C++ Сравнивание строк в структуре
Здравствуйте. Мне нужно вывести на экран структуру, в подпрограмме я ввожу данные, а в этой output вывожу данные, но сначала мне нужно найти и сложить все данные по одному продавцу, например, он повторяется 2 раза и мне все показатели его нужно сложить. У меня проблема со сравнивание строки, FIO. Подскажите, пожалуйста, как организовать сравнение. Я думала про массив, но не получилось и общее...
C++ Чем заменить istringstream? http://www.cyberforum.ru/cpp-beginners/thread1134264.html
Задание:Найти в списке из 7 слов все слова, состоящие из заданного количества букв. #include <iostream.h> #include <sstream.h> #include <string.h> #include <conio.h> main() { string str;
C++ Создание и обработка наборов объектов заданной структуры в ООП У меня есть задание и написанная программа "Исходные данные: набор точек на плоскости, определяющих треугольник. Функции: 1) Определение является ли треугольник равнобедренным. 2) Подсчет площади равнобедренного треугольника. Обработка: 1)Определить с использованием первой функции номера объектов, которые имеют равнобедренные треугольники. 2) С использованием второй функции определить... подробнее

Показать сообщение отдельно
MrKybik
 Аватар для MrKybik
-20 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 84
30.03.2014, 22:03     Перегрузка оператора
Помогите доделать задание...
Это в классе
  • метод, осуществляющий ввод значений полей класса с клавиатуры;
  • метод, осуществляющий вывод значений полей класса на экран в виде: 4 км 20 м 4 см.

Перегрузка оператора (хотя бы один, мне для примера)
  • присваивание (=);
  • сложение (+) – добавление к расстоянию заданных метров;
  • вычитание (-);
  • сравнение.

C++ (Qt)
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>
#include <string>
#include <sstream>
 
 
using namespace std;
 
class DISTANCE {
    int kilom;
    int metr;
    int *samt;
 
public:
 
     DISTANCE(const  DISTANCE & copyObj ){
        cout<<"Вызван конструктор копирования DISTANCE"<<endl;
        this->kilom=copyObj.kilom;
        this->metr=copyObj.metr;
        this->samt=new int (*copyObj.samt);
    }
 
    DISTANCE(){
        cout<<"Вызван конструктор по умолчанию DISTANCE"<<endl;
        this->kilom=int(1);
        this->metr=int(2);
        this->samt=new int(3);
    }
 
    DISTANCE(int kilom, int metr, int samt){
        cout<<"Вызван конструктор с параметрами DISTANCE"<<endl;
        this->kilom=kilom;
        this->metr=metr;
        this->samt=new int(samt);
    }
 
    ~DISTANCE(){
        cout<<"Вызван деструктор DISTANCE"<<endl;
        delete this->samt;
    }
 
 
 
    int Kilom()const{
        return kilom;
    }
 
    void Kilom(int kilom){
        this->kilom=kilom;
    }
 
 
     int Metr()const{
        return metr;
    }
 
    void Metr(int metr){
        this->metr=metr;
    }
 
 
    int Samt()const{
        return *samt;
    }
 
    void Samt(int samt){
        *this->samt=samt;
    }
 
 
};
 
 
/*void printDISTANCE(DISTANCE & obj) {
    cout<<"\nКилометры = "<<obj.Kilom()<<endl;
    cout<<"Метры = "<< obj.Metr()<<endl;
    cout<<"Сантиметры = "<< obj.Samt()<<endl;
    
}*/
 
 
 
int main() 
{
    setlocale(0,"");
    const int size=3;
    DISTANCE obj[size];
    //printDISTANCE(obj);
    
    for (int i=0;i<size;i++) {
            int kilom,metr,samt;
 
        cout << "--------------------------" << endl;
        cout << "Километры = ";
        cin >> kilom;
        cout << "Метры = ";
        cin >> metr;
        cout << "Сантиметры = ";
        cin >> samt;
        cout << "--------------------------" << endl;
            obj[i].Kilom(kilom);
            obj[i].Metr(metr);
            obj[i].Samt(samt);
            
 
        /*cout << "Введеные данные:" << endl;
        cout << kilom <<" км" << endl;
        cout << metr <<" м" << endl;
        cout << samt <<" см" << endl;*/
 
    
    system("pause");
    return 0;
 
}
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru