我在源代码中使用 dynamic_cast 将指针转换为如下所示,
Base *base = here storing the pointer;
Derived *derived = dynamic_cast<Derived*>(base);
如果 base 没有类层次结构的指针,则强制转换失败并返回 NULL。在接下来的几行中,我正在检查 NULL。所以没有问题。
我遇到了一个崩溃转储,我的应用程序由于 dynamic_cast throws 异常而崩溃。
我知道 dynamic_cast 只会在与引用类型一起使用时抛出。
当我在上面的源代码中使用指针时,当 dynamic_cast 与指针一起使用时,知道什么时候会抛出异常吗?