Безопасно ли конвертировать DateTime в time_t без обработки ошибок в C ++ CLI?

Я хотел бы использовать следующий код:

long long DateTimeToTimeT(System::DateTime dt)
{
System::DateTime epoch(1970, 1, 1, 0, 0, 0, 0);
long long totalSeconds = (dt - epoch).TotalSeconds;

return totalSeconds >= 0 ? totalSeconds : 0;
}

Вопрос в том, является ли исключение безопасным, или я должен здесь исправить некоторые ошибки?

Я имею в виду: это безопасно конвертировать из double (то есть TotalSeconds) в long long в таком случае?

0

Решение

Да, это безопасно: вычитание двух дат никогда не выбрасывает (http://msdn.microsoft.com/en-us/library/1905yhe2(v=vs.110).aspx) поскольку TimeSpan охватывает гораздо больший интервал, чем действительные даты.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]