2011-03-03 9 views
3

bad_typeid例外が使用されるのはまさにいつですか?いつbad_typeidを使用しますか?

+10

この説明で間違っています:http://www.cplusplus.com/reference/std/typeinfo/bad_typeid/ –

+0

私は本当にこの例外を使用するより具体的な状況を探しています。 – Joshua

答えて

2

例外このタイプの一般的は使用できません。代わりに、それはと認識できるようにのみ存在します。テスターまたはユーザーがbad_typeidというクラッシュレポートを送信した場合、デバッグを開始するときにどのような種類のバグがあるかを知ることができます。

あなたはこの例外を自分で投げることを本当に意味するものではありません。あなたがそれを捉えることさえも考えていません。結局のところ、プログラム内でresolve the root cause of this errorに何をする可能性がありますか?このタイプの例外から回復する方法は、無効な値に対してtypeid演算子を使用しようとしないプログラムの更新版をバグを発見し、修正し、再コンパイルし、配布することです。

2

badidypeid例外は、typeidのオペランドがNULLポインタの場合にtypeid演算子によってスローされます。つまり、参照されていないヌルポインタでtypeidが呼び出されると、bad_typeidクラスの例外がスローされます。

+0

この例外をいつ使用するかについての具体的な例はありますか?私はそれらのページのドキュメントをどのように使用するか見ていますが、私はそれが使用されるより具体的な状況を探しています。 – Joshua

関連する問題