【发布时间】:2013-05-10 06:42:49
【问题描述】:
我在源代码中使用 dynamic_cast 将指针转换为如下所示,
Base *base = here storing the pointer;
Derived *derived = dynamic_cast<Derived*>(base);
如果 base 没有类层次结构的指针,则强制转换失败并返回 NULL。在接下来的几行中,我正在检查 NULL。所以没有问题。
我遇到了一个故障转储,我的应用程序由于 dynamic_cast throws 异常而崩溃。
我知道 dynamic_cast 只会在与引用类型一起使用时抛出。
知道什么时候 dynamic_cast 在与我在上面的源代码中使用的指针一起使用时会引发异常吗?
【问题讨论】:
标签: c++ dynamic-cast