Open alexey-malov opened 6 years ago
[x] операции умножения время на время не существует
[x] при делении времени ан время должны полуачться инты
[ ] убрать отладочный вывод 172
bool CTime::operator==(CTime const& time) const
{
std::cout << m_timestamp << " " << time.m_timestamp;
return (m_timestamp == time.m_timestamp);
}
[x] в операторах сравнения убрать лишние returnы
[ ] операторы сравнения должны четко проверять граничные значения
CTime::CTime(unsigned hours, unsigned minutes, unsigned seconds)
{
if (hours > HOURS_IN_DAY || minutes > MINUTES_IN_HOUR || seconds > SECONDS_IN_MINUTE)
{
throw std::invalid_argument("invalid argument \n");
}
m_timestamp = SECONDS_IN_HOUR * hours + SECONDS_IN_MINUTE * minutes + seconds;
}
CTime::CTime(unsigned timeStamp)
{
if (timeStamp >= SECONDS_IN_DAY)
{
throw std::invalid_argument("invalid argument 2\n");
}
m_timestamp = timeStamp;
}
[x] объявить как explicit
[x] отдельно добавить конструктор по умолчанию
int operator/=(CTime const& time);
[x] Инкремент считает не правильно
[x] Постфиксную форму инкремента и декремента реализовать через префиксную