是否有需要启用异常的c ++ 11标准库接口列表?

jus*_*tin 7 exception c++-standard-library c++11

从阅读c ++ 11草案的修订版N3242开始,标准库接口的某些组件(特别是线程和锁定)似乎依赖于异常处理.

由于我在禁用异常时做了很多工作,我想知道哪些库组件/功能(实际上或逻辑上)不可用而没有启用异常处理?

jus*_*tin 1

这个问题已经一个多月了,还没有答案。

我提供的答案可以被视为社区维基,根据需要添加到其中。

  • std::thread 第 30.2.2 节。传递性。使用本机实现来实现抽象。

  • std::mutex, std::recursive_mutex, std::timed_mutex, std::recursive_timed_mutex. 第 30.4.1 节,如果您提供自己的异常自由锁定(通过BasicLockableLockableTimedLockable),则不可传递。使用本机实现来实现抽象。

  • std::condition_variable 第 30.5 节。传递性。使用本机实现来实现抽象。

注:还会有更多。