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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строковый ввод-вывод и считывание последнего слова в строке http://www.cyberforum.ru/cpp-beginners/thread428138.html
Добрый вечер. Возник вопрос по следующей задаче: "1) Скопировать из файла F1 в файл F2 строки, начиная с 4. 2) Подсчитать количество гласных в последнем слове F2." Скажите, правильно ли я...
C++ Интервал простых чисел и сортировка по убыванию Из заданного интервала вывести все числа по убыванию.Границы интервала задаются с клавиатуры. На форуме нашёл код который делает почти то, что нужно,но не понял как отсортировать по убыванию.... http://www.cyberforum.ru/cpp-beginners/thread428125.html
Рекурсии и прочие нехорошие слова C++
У меня возникло несколько вопросов с заданиями по рекурсии.Прошу оказать посильную помощь. Вот: (...((x+n)^2+n)^2+n)^2 и так n раз. Зарание спасибо Добавлено через 18 минут Оч нужна помощь ...
C++ таймер 8253
Для задания временных интервалов и формирования сигналов с различными временными параметрами в IBM PC/XT применяется программируемый таймер 8253 1. Определить режимы работы каналов таймера. 2....
C++ Невозможно создать экземпляр абстрактного класса. :) http://www.cyberforum.ru/cpp-beginners/thread428080.html
Делаю курсовик, сейчас на начальной стадии (а как же еще к концу сессии :D). Код, который я сейчас покажу еще "сырой", а точнее нарезка из лаб за семестр и и тп. Пока отлаживаю просто создание...
C++ Строки C/C++ До строк пока что не дошёл, взгляните если не сложно: Задана строка, содержащая целые числа (максимум 20 чисел). Упорядочить числа в строке по возрастанию. У самого есть предположение, но... подробнее

Показать сообщение отдельно
aus
7 / 7 / 1
Регистрация: 18.10.2010
Сообщений: 56

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

14.01.2012, 17:38. Просмотров 327. Ответов 1
Метки (Все метки)

Имеется время, например 12:12:12
Перегрузка инкремента
C++
1
2
3
4
5
Time &Time::operator ++ ()
{
        Next();
        return *this;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void Time::Next()
{
        if (sec <= 59) sec++;
 
        if (sec > 59)
        {
                sec = 0;
                min++;
        }
 
        if (min > 59)
        {
                min = 0;
                hour++;
        }
 
        if (hour == 24)
        {
                hour = 0;
        }
}
После чего время становится 12:12:13

Потом ко времени прибавляем число, например 20
C++
1
2
3
4
5
6
7
Time Time::operator+(int a)
    {
 
         for(int i = 1; i != a+1; i++)
         Next();
         return *this;
    }
Получается 12:12:33

Почему не прибавляет число к изначальному значению, а прибавляет к тому что получилось после предыдущей операции? Как сделать чтобы последующие операции рботали с начальным значением?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru