在 CLI 中转换日期时间time_t错误处理C++是否安全
Is it safe to convert DateTime in time_t whithout error handling in 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
(即总秒数)转换为long long
是否安全?
是的,这是安全的:两个日期的减法永远不会抛出(http://msdn.microsoft.com/en-us/library/1905yhe2(v=vs.110).aspx),因为TimeSpan
覆盖的间隔比有效日期大得多。
相关文章:
- 错误处理.将系统错误代码映射到泛型
- 通过错误处理,在C++中可靠地获得用户十六进制输入
- posix_spawn():使用posix_scawn()时的错误处理问题
- 在C++中样板"冷/never_inline"错误处理技术的最佳方法是什么?
- 关于 istream 中的错误处理的问题
- 程序使用的 C 库中的错误处理C++
- C++ 错误检查 fstream open() 命令和一般字符串流错误处理
- 使用std::tie进行类似golang的错误处理,同时返回结果,是否有缺点?(C++11)
- Boost进程"系统"功能中的错误处理
- RPN计算器c++错误处理和多个运算符
- 提升精神 x3 错误处理程序与期望
- 构造函数中的错误处理而不会失败
- 当 C++ 中函数参数的输入类型(类)错误时的错误处理
- 关于 ocilib 错误处理的问题,如何使用 ocilib 正确捕获日志错误?
- 我可以使用 std::optional 进行错误处理吗?
- C++ main() 末尾关于错误处理的错误
- 抽象包装带有异常的 C 错误处理的最佳方法
- vwprintf错误处理(ERRNO显示0)
- C++ 使用枚举进行错误处理
- 在 C++ 中创建自己的错误处理机制