powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простые вопросы. Начинающим сюда.
16 сообщений из 16, страница 1 из 1
Простые вопросы. Начинающим сюда.
    #34088415
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут предлагаю изучающим С++ выкладывать простые вопросы, наподобие "Что делает функция cout и как вывести строчку в консоли?", не требующие долгих споров и размышлений.

Начну я. Как заставить консоль реагировать на нажатие клавиш и где можно посмотреть имена клавиш? Если ответите небольшим примером, буду благодарен.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34088723
Tracer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имена клавиш можно посмотреть на клавиатуре - там такие ( обычно ) чёрные значки, а консоль и так сама реагирует - она дама нервная.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34088843
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А снизу красные, я в сумлениях... Я имел ввиду виртуальные клавиши. Например определение действия после нажатия определенной клавиши. Нашел сам, коды виртуальных клавиш тут
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34089814
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу найти в учебниках и хелпе ничего кроме воды. Есть задача сделать класс времени и метод, складывающий две переменные этого класса. class Time
{
public:
unsigned int hour;
unsigned int min;
unsigned int sec;
void out(t);
void sum(t1, t2);
};
Почему он пишет ошибку в sum и не пишет в out? Как дальше реализовать функцию? Можно просто описание, тело функции сделаю сам.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34089822
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДестанЕсть задача сделать класс времени и метод, складывающий две переменные этого класса.
Правильное решение - объяснить преподу, что постановка задачи неверна или как минимум недостаточна. Пусть расскажет, что будет, если к половине второго утра добавить без четверти шесть вечера.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34089834
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скорее добавить к двум часам экзамена ёще четыре часа пересдачи... Там надо при создании переменной класса присвоить ей значения по умолчанию.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34090042
Lepsik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДестанНе могу найти в учебниках и хелпе ничего кроме воды. Есть задача сделать класс времени и метод, складывающий две переменные этого класса. class Time
{
public:
unsigned int hour;
unsigned int min;
unsigned int sec;
void out(t);
void sum(t1, t2);
};
Почему он пишет ошибку в sum и не пишет в out? Как дальше реализовать функцию? Можно просто описание, тело функции сделаю сам.


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
 Time sum( Time t1, Timet2){
    Time v;
    v.hour = t1.hour + t2.hour;
    v.min = t1.min + t2.min;
    v.sec = t1.sec + t2.sec;
    if( v.sec >=  60  )
    {
        v.sec -=   60 ;
        v.min++;
    }
    if( v.min >=  60  )
    {
        v.min -=   60 ;
        v.hour++;
    }
    if( v.hour >=  24  )
    {
        v.hour -=   24 ;
    }
    return v;
 };

что такое out я не понял.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34090701
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
void out(Time t)
{
 printf("%02d:%02d:%02d",t.hour,t.min,t.sec);
}
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34090717
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lepsik
Код: plaintext
1.
2.
3.
    if( v.hour >=  24  )
    {
        v.hour -=   24 ;
    }
только часы, наверно, не надо убавлять, раз уж это TimeSpan
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34092601
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
void out(t);
void sum(t1, t2);

operator << (который out ) обычно реализуется как static (or global) friend , имеющий два параметра: поток и объект данного класса.

operator + (который sum) обычно реализуется как константный метод данного класса с одим параметром, или как static (or global) friend, имеющий два параметра.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34117689
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решение задачи я написал почти такое же, но прога не компилировалась. После долгих и упорных интимных отношений с этой прогой и моря перекопанных материалов выяснилась ошибка - Time - зарезервированное слово, поэтому и не компилировалось. Изменил название класса на TTime и всё заработало. Спасибо всем, кто тут отметился.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34117810
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что значит звездочка в записи
Код: plaintext
char* fio;
в объявлении класса? Без неё не компилится, а в 1000 страницах учебника искать долго...
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34117816
Дестан
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда ваша программа узнает адрес памяти, она сможет использовать операцию разыменования C++ (*) для определения значения, хранимого по данному адресу.
Нашел сам, теперь понятно.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34118266
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДестанЧто значит звездочка в записи
Код: plaintext
char* fio;
в объявлении класса? Без неё не компилится, а в 1000 страницах учебника искать долго...

Модификатор типа данных, обозначающий, что этот тип - указатель на модифицируемый тип.

char -- тип "символ" (на самом деле целое знаковое число размером в 8 бит, а никакой не символ).
char* -- тип "указатель на символ"
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34118277
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дестанвыяснилась ошибка - Time - зарезервированное слово, поэтому и не компилировалось. Изменил название класса на TTime и всё заработало.

Time не является зарезервированным словом. В С/С++ все зарезервированные слова состоят только из букв в нижнем регистре, а С.С++ - языки, чувствительные к регистру символов текста программы.

Time может быть уже объявленным где-то типом данных, тогда также будет проблема.
...
Рейтинг: 0 / 0
Простые вопросы. Начинающим сюда.
    #34118307
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем все в кучук валить , есть вопрос задавай :)
то есть создавай новый топик.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простые вопросы. Начинающим сюда.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]