使用std::feclearexcept的约定
Conventions for using std::feclearexcept
使用std::feclearexcept
有什么约定吗?在您通常看到的示例中,这在执行可能触发浮点异常的操作之前被称为。这样做似乎是安全的。
但是,您是否也应该在检测到并处理错误后调用std::feclearexcept
,以便在程序的其余执行过程中错误状态不会持续?
如果您总是在检查浮点异常之前调用std::feclearexcept
,并且如果您总是检查所有可能触发此类异常的操作,那么这将是多余的。但至少从我的经验来看,这些都是很多假设,在真正的软件中是不太可能的。
Simlar在推理中仅在执行特定操作之前(重新(设置errno
,并打算在之后检查errno
。
可能存在您不知道的errno
或浮点异常标志的设置条件。你不知道它们到底发生在哪里,也不知道它们在语义上意味着什么。你没有能力处理";呃,过去某个地方有溢流,但我不知道这是什么意思"。
因此,在执行特定操作之前重置errno
/调用std::feclearexcept
,希望了解确切的结果/错误条件,do知道如何处理。
在该操作之后重置错误标志没有任何作用。
相关文章:
- "std::unique_XXX"命名约定背后的基本原理是什么?
- 为什么在 x64 中忽略__stdcall调用约定?
- 引发异常的方法的命名约定 (C++)?
- 窗口调用约定
- 我应该提到纯虚函数中的调用约定吗?
- C++:在进行切片时对迭代器的约定,特别是对于访问最后一个元素并最终将其删除
- 如何使用gcc指定stdcall调用约定
- Clang:x86 FPU调用约定
- 该标准是否说明了例外和不同调用约定的共存
- Clang++的InterlockedExchange的32位调用约定错误,但MSVC可以
- std::sort & comp - 调用约定?
- C++命名空间约定
- C++的新手试图弄清楚类约定
- 如何为类 /块 /范围选择C 调用约定
- C 未知呼叫约定
- C++关于传递对象(指针与引用)的约定
- DLL 的"good"调用约定是什么?
- 结构中重载运算符的调用约定
- 一些编码约定/标准实践问题
- 'ShowSUM':__declspec(dllexport)不能应用于具有__clrcall调用约定的函数