Oracle Solaris Studio 12.2:C++ 用户指南

8.3 禁用异常

如果知道程序中未使用异常,可以使用编译器选项 features=no%except 抑制支持异常处理的代码的生成。该选项的使用可以稍微减小代码的大小,并能加快代码的执行速度。不过,用禁用的异常编译的文件链接到使用异常的文件时,在用禁用的异常编译的文件中的某些局部对象在发生异常时不会销毁。缺省情况下,编译器生成支持异常处理的代码。通常都要启用异常,只有时间和空间的开销是考虑的重要因素时才禁止异常。


注 –

因为 C++ 标准库 dynamic_cast 和缺省运算符 new 要求使用异常,所以在标准模式(缺省模式)下编译时不应禁用异常。