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

К числу прибавить объект класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ массив чисел http://www.cyberforum.ru/cpp-beginners/thread430025.html
Даны натуральные числа i,N, массив чисел A(N) (i < N ). Найти среднее арифметческое всех чисел массива, кроме A(i).
C++ Алгоритм запоминания языка при изучении... Программисты, подскажите свои методы запоминания столь многочисленных функций языков программирования... Только не надо писать что единственный способ - много писать. При этом способе запоминаются только те функции, которыми пишеш а остальные 95% постепенно забываются... Но возможно есть способы долгосрочного запоминания всех функций... м? http://www.cyberforum.ru/cpp-beginners/thread429967.html
C++ игра морской бой
задание такое Запрограммировать игру двух игроков в “Морской бой”. Сначала, по-сле запуска программы, игроки совместно вводят размер прямоуголь-ных клеточных полей для игры (NxM) и типы и количество кораблей. Затем игроки независимо друг от друга вводят данные о расстановке своих кораблей (программа должна проверять корректность данных). Далее программа выдает графическое изображение двух...
C++ Передача данных
Можно ли из одной программы в другую передать число или символ?? Если можно то как?:good:
C++ Семафоры http://www.cyberforum.ru/cpp-beginners/thread429921.html
Много читал в гугле,но все ни как не пойму,перед чем непосредственно создается семафор..где стоит его ждать и выгружать..Объясните пожалуйста
C++ С++ матрицы Здравствуйте. У меня сейчас идет экзамен,я прошу помочь написать мне код программы, сейчас возможности заплатить нету, кто поможет с кодом, тот получит вознаграждение! Я серьезно! у меня сейчас экзамен. Итак: Задана исходная матрица. размерность матрицы определяется пользователем при выполнении проекта. Исходная матрица расположена на первой форме. на второй форме отобразить результат.... подробнее

Показать сообщение отдельно
BenBen
0 / 0 / 0
Регистрация: 16.01.2012
Сообщений: 15
19.01.2012, 20:38  [ТС]     К числу прибавить объект класса
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
//---------------------------------------------------------------------------
#include <string.h>
#include <stdio.h>
#include <iostream.h>
#include <vcl.h>
#include <stdlib.h>
#include "Time.h"
#pragma hdrstop
//---------------------------------------------------------------------------
Vremya::Vremya()
{
        sec = 0;
        min = 0;
        hour = 0;
}
//---------------------------------------------------------------------------
Vremya::Vremya(int h, int m, int s)
{
        sec = s;
        min = m;
        hour = h;
}
//---------------------------------------------------------------------------
Vremya::Vremya(const Vremya &t)
{
        hour = t.hour;
        min = t.min;
        sec = t.sec;
}
//---------------------------------------------------------------------------
int getSec(const Vremya &t)
{
        int sec = t.sec + t.min*60 + t.hour*3600;
        return sec;
}
//---------------------------------------------------------------------------
Vremya getHour(int a)
{
        Vremya t;
        t.hour = a/3600;
        t.min = (a - t.hour*3600)/60;
        t.sec = a - t.hour*3600 - t.min*60;
        return t;
}
//---------------------------------------------------------------------------
void Vremya::Show()
{
        cout<<hour<<":"<<min<<":"<<sec;
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator ++ ()
{
        int sec = getSec(*this);
        sec++;
        *this = getHour(sec);
        return *this;
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator -- ()
{
        int sec = getSec(*this);
        sec--;
        *this = getHour(sec);
        return *this;
}
//---------------------------------------------------------------------------
Vremya Vremya::operator ++ (int)
{
        Vremya a = *this;
        int sec = getSec(*this);
        sec++;
        *this = getHour(sec);
        return a;
}
//---------------------------------------------------------------------------
Vremya Vremya::operator -- (int)
{
        Vremya a = *this;
        int sec = getSec(*this);
        sec--;
        *this = getHour(sec);
        return a;
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator + (int a)
{
        int sec = getSec(*this);
        sec += a;
        return *this = getHour(sec);
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator - (int a)
{
        int sec = getSec(*this);
        sec -= a;
        return *this = getHour(sec);
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator += (int a)
{
        int sec = getSec(*this);
        sec += a;
        return *this = getHour(sec);
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator -= (int a)
{
        int sec = getSec(*this);
        sec -= a;
        return *this = getHour(sec);
}
//---------------------------------------------------------------------------
Vremya operator + (int a, const Vremya &t)
{
        int sec = getSec(t);
        sec += a;
        return getHour(sec);
}
//---------------------------------------------------------------------------
Vremya &Vremya::operator = (const Vremya &t)
{
        sec = t.sec;
        min = t.min;
        hour = t.hour;
        return *this;
}
 
 
//---------------------------------------------------------------------------
 
#pragma package(smart_init)
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
//---------------------------------------------------------------------------
 
#ifndef VremyaH
#define VremyaH
 
 
class Vremya
{
        private:
    int sec, min, hour;
 
        public:
    Vremya();
    Vremya(int s, int m, int h);
        Vremya(const Vremya &t);
 
    void Show();
 
    friend int getSec(const Vremya &t);
        friend Vremya getHour(int a);
 
    Vremya &operator ++ ();
    Vremya &operator -- ();
 
    Vremya operator ++ (int);
    Vremya operator -- (int);
 
    Vremya &operator += (int a);
    Vremya &operator -= (int a);
 
    Vremya &operator + (int a);
    Vremya &operator - (int a);
 
        Vremya &operator = (const Vremya &t);
 
    friend Vremya operator + (int a, const Vremya &t);
    friend Vremya operator - (int a, const Vremya &t);
 
 
};
//---------------------------------------------------------------------------
#endif

C++
1
2
3
4
5
6
7
В мейне
Vremya t1(12,0,0);
Vremya t2;
t1+= 10; //работает
t1 = t2; //работает
t1 + 10; //работает
10 + t1; //не работает
Добавлено через 2 минуты
Так то он работает (надеюсь правильно) но вот с перегрузкой этой застрял.
И сижу туплю не могу понять как без френдов написать
 
Текущее время: 14:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru