wrong datetime

 

День добрый! Подскажите, пожалуйста, как программно отловить wrong datetime? Google ответа не дал


бывает еще отрицательный, с ним понятно. А с положительным как быть? Может быть он выше какого-то целочисленного лимита?

 

https://www.mql5.com/ru/docs/basis/types/integer/datetime

Диапазон значений от 1 января 1970 года до 31 декабря 3000 года.

void OnStart()
{
   datetime dt = D'31.12.3000 23:59:59';
   dt+=28800;
   Print("dt = ",dt, " --> ",ulong(dt));
   dt++;
   Print("dt = ",dt, " --> ",ulong(dt));
}

2020.06.22 06:52:49.058 tst (EURUSD,H1) dt = 3001.01.01 07:59:59 --> 32535244799

2020.06.22 06:52:49.058 tst (EURUSD,H1) dt = wrong datetime --> 32535244800


PS: dt+=28800; - подобрал

 
Igor Makanu:

https://www.mql5.com/ru/docs/basis/types/integer/datetime

2020.06.22 06:52:49.058 tst (EURUSD,H1) dt = 3001.01.01 07:59:59 --> 32535244799

2020.06.22 06:52:49.058 tst (EURUSD,H1) dt = wrong datetime --> 32535244800


PS: dt+=28800; - подобрал

Класс, спасибо!

Причина обращения: