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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
nikkka
Мат в 32 хода
235 / 170 / 8
Регистрация: 10.09.2009
Сообщений: 1,096
#1

класс Time - C++

03.07.2010, 15:10. Просмотров 1272. Ответов 2
Метки нет (Все метки)

у класса Time скрытые переменные - minutes и hours. функция-член должна принять ссылку на оъект Time и... короче, вот код:
C++
1
2
3
4
5
6
7
8
9
Time Time::sum(Time & s)
{
    sum.hours=s.hours+hours;
    sum.minutes=s.minutes+minutes;
    if (sum.minutes>=60)
    {
        sum.hour++;
        sum.minutes-=60;
}
компайлер говорит:
insufficient contextual information to determine type
что это такое?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2010, 15:10     класс Time
Посмотрите здесь:

Создать класс с именем time C++
Создать класс Time для работы со временем C++
Класс Time для работы с временем в формате «час:минута:секунда» C++
C++ класс Time
Класс time C++
C++ Класс Time через time(0)
Создать класс Time C++
C++ Создать класс Time
Класс Time. Не могу перевести на другую строку C++
Создать класс time для работы со временем C++
Класс "Время". Двусмысленность между time и std:time(long*) C++
Реализовать класс Time, который содержит три поля типа int C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
03.07.2010, 21:33     класс Time #2
sum.minutes-=60;

Мб компилю не нравится сие... Без фулл текста проги не особо подскажешь...
И может вот эта закрывающая скобка после if таки нужна?
C++
1
2
3
4
5
6
7
8
9
10
Time Time::sum(Time & s)
{
    sum.hours=s.hours+hours;
    sum.minutes=s.minutes+minutes;
    if (sum.minutes>=60)
    {
        sum.hour++;
        sum.minutes-=60;
    }
}
Добавлено через 7 минут
И откуда вообще sum. hoors, если ты не создаешь временный объект? ИЛи я чего то не понимаю? оО

И без ретерна... И вообще подача в функцию аргумента какая-то странная... Перегружал бы тогда уж оператор сложения..
usernet009
24 / 24 / 1
Регистрация: 28.12.2009
Сообщений: 85
03.07.2010, 21:44     класс Time #3
C++
1
sum.hours
Скорей всего на это ругается. Так как ... sum - это имя функции, а как ты к функции используешь оператор уточненного доступа ( или как он там называется ? )
Если sum - должен быть временным объектом, то создай его сначала и назови по другому.
И еще, у тебя написано что функция возвращает объкт Time. Так верни его ж нужно вернуть. Например так
C++
1
2
3
4
5
6
7
8
9
10
11
12
Time Time::sum(Time & s)
{
    Time temp; // хз какие у тебя конструкторы
    temp.hours=s.hours+hours;
    temp.minutes=s.minutes+minutes;
    if (temp.minutes>=60)
    {
        temp.hour++;
        temp.minutes-=60;
    }
    return temp;
}
Yandex
Объявления
03.07.2010, 21:44     класс Time
Ответ Создать тему
Опции темы

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