Сообщение Re: Ненависть к std::chrono от 30.12.2020 21:04
Изменено 04.01.2021 10:22 B0FEE664
Re: Ненависть к std::chrono
Здравствуйте, Cyberax, Вы писали:
C>Скажите, ну вот какой пиииииии в комитете не догадался сделать так, чтобы часы можно было вызывать через виртуальный метод?!?
Это ещё ерунда. А вот то, что авторы не догадались ввести объект std::chrono::zero — вот это абсурд достойный Рина незнавшего нуля. Вот как сравнить std::chrono::duration с нулём?
Или я туплю или округлить разницу двух time точек до секунд? в рамках С++14 задача не тривиальная:
Не, я понимаю, что вместо zero < diff_time можно написать time1 > time2, но это усложнение на ровном месте. И вообще, как можно было написать duration_cast, а с round тормозить 6 лет?
C>Скажите, ну вот какой пиииииии в комитете не догадался сделать так, чтобы часы можно было вызывать через виртуальный метод?!?
Это ещё ерунда. А вот то, что авторы не догадались ввести объект std::chrono::zero — вот это абсурд достойный Рина незнавшего нуля. Вот как сравнить std::chrono::duration с нулём?
Или я туплю или округлить разницу двух time точек до секунд? в рамках С++14 задача не тривиальная:
namespace co = std::chrono
const auto diff_time = time1 - time2;
const decltype(diff_time) zero{};
const co::seconds diff_seconds = co::duration_cast<co::seconds>( zero < diff_time ? diff_time + co::microseconds(500)
: diff_time - co::microseconds(500)
);
Не, я понимаю, что вместо zero < diff_time можно написать time1 > time2, но это усложнение на ровном месте. И вообще, как можно было написать duration_cast, а с round тормозить 6 лет?
Re: Ненависть к std::chrono
Здравствуйте, Cyberax, Вы писали:
C>Скажите, ну вот какой пиииииии в комитете не догадался сделать так, чтобы часы можно было вызывать через виртуальный метод?!?
Это ещё ерунда. А вот то, что авторы не догадались ввести объект std::chrono::zero — вот это абсурд достойный Рима незнавшего нуля. Вот как сравнить std::chrono::duration с нулём?
Или я туплю или округлить разницу двух time точек до секунд? в рамках С++14 задача не тривиальная:
Не, я понимаю, что вместо zero < diff_time можно написать time1 > time2, но это усложнение на ровном месте. И вообще, как можно было написать duration_cast, а с round тормозить 6 лет?
C>Скажите, ну вот какой пиииииии в комитете не догадался сделать так, чтобы часы можно было вызывать через виртуальный метод?!?
Это ещё ерунда. А вот то, что авторы не догадались ввести объект std::chrono::zero — вот это абсурд достойный Рима незнавшего нуля. Вот как сравнить std::chrono::duration с нулём?
Или я туплю или округлить разницу двух time точек до секунд? в рамках С++14 задача не тривиальная:
namespace co = std::chrono
const auto diff_time = time1 - time2;
const decltype(diff_time) zero{};
const co::seconds diff_seconds = co::duration_cast<co::seconds>( zero < diff_time ? diff_time + co::microseconds(500)
: diff_time - co::microseconds(500)
);
Не, я понимаю, что вместо zero < diff_time можно написать time1 > time2, но это усложнение на ровном месте. И вообще, как можно было написать duration_cast, а с round тормозить 6 лет?