我什么时候会使用bad_typeid?

时间:2011-03-03 02:30:32

标签: c++ exception exception-handling

什么时候会使用bad_typeid异常?

2 个答案:

答案 0 :(得分:2)

当typeid的操作数是NULL指针时,typeid运算符抛出bad_typeid异常。换句话说,当在取消引用的空指针上调用typeid时,抛出类bad_typeid的异常。

答案 1 :(得分:2)

这种类型的异常通常不会被使用。相反,它只存在,以便您可以识别它。如果测试人员或用户向您发送了提及bad_typeid的崩溃报告,您就会知道在开始调试时需要查找哪种类型的错误。

你并不是真的想要自己抛出这个异常,而且我认为你甚至不想抓住它。毕竟,你可以在你的程序中对resolve the root cause of this error做些什么?从这种类型的异常中恢复的方法是找到错误,修复它,重新编译和分发程序的更新版本,该版本不会尝试在无效值上使用typeid运算符。