続・実行時のクラス判定 以前、実行時のクラス判定として、 MFCの場合に使える方法を紹介しました。 今回は、もっと汎用的な、typeidや dynamic_castを使う方法を紹介します。 ここでは概要しか紹介しませんので、実際に使ってみる場合にはコンパイラーの 付属文書等もご覧ください。 型名を調べる まずは、型を文字列として取得する方法。変数varがあったとすると、 const char * ty = typeid(var).name(); という具合に書くことができます。tyには、 "class CHoge *"などといった具合に 型名(ここではクラス名)が入ります。 もっとも、型が想定通りであるか確認するのに assert(strcmp(ty, "class CHoge *") == 0); と書くのはいかがでしょうか。もっとこみいった型で、文字列での書き表し方が 幾通りもあるよう