2016-03-21 6 views
4

時間の粗い単位(たとえばstd::chrono::minutesstd::chrono::hours)に変換するとどうなりますかduration_cast?たとえば、std::chrono::hoursに変換された場合、std::chrono::minutes(91)はどのような値になりますか? 2h、1h?duration_castの周りはどうですか

+1

クイックテストプログラムを書くのに時間がかかるべきではなく、答えを見つけ出すべきです。 –

+1

アルゴリズムは[time.duration.cast]に記述されています(例:[here](https://raw.githubusercontent.com/cplusplus/draft/master/papers/n4582.pdf))。 –

答えて

4

duration_castは常にゼロに向かって丸めます。私。正の値は切り捨てられ、負の値は切り上げられます。他の丸めオプションについて

は、以下を参照してください。

http://howardhinnant.github.io/duration_io/chrono_util.html

floorceil、およびroundはドラフトC++ 1Z(うまくいけばC++ 17)ドラフトワーキングペーパーに現在あります。その間にchrono_util.htmlでコードを使用してください。問題がある場合は教えてください。

関連する問題