捕获类型调度时间

catch type dispatching time

本文关键字:时间 调度 类型      更新时间:2023-10-16

有一个问题正在与同事讨论 - catch的类型调度是编译时还是tun-time?换句话说 - 系统何时决定在引发该特定类型的异常时应调用特定catch。我认为它应该是运行时,但我不确定。

任何帮助将不胜感激!

文档 关于C++性能的技术报告描述了编译器用于处理异常处理的几种技术。

最新的编译器会生成一个表,将异常类型映射到 catch 处理程序位置(在编译阶段)。当编译的程序运行并发生throw时,将对预先计算的表执行查找以查找处理程序位置。