DateTime.AddDays()にはdouble
というパラメータがあるため、日を追加すると丸め誤差が発生する可能性があります。たとえば、次のループがあるとしましょう:DateTime.AddDaysはどのくらい正確ですか?
DateTime Now = DateTime.Today;
for (int i = 0; i < 365; ++i)
{
Now = Now.AddDays(1);
// do something
}
私は今や真夜中から漂流するかもしれないと心配しています。私はいつも少し遅くなることがあり、このような何かをしたくなるが、私の妄想を軽減しています:
for (int i = 0; i < 365; ++i)
{
Now = Now.AddDays(1.01).Date;
// do something
}
あなたは今、23 = 'を使用して提案された方法を呼び出す場合:59'を、それが間違っになります結果。 – mafu