【初心者歓迎】C/C++室 Ver.17【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
004838
2005/05/14(土) 22:26:42後で多分必要になると思うので参考にします。ありがとうございます。
ところでまた質問なんですが、、
「動物クラス」を継承した「犬クラス」と「猫クラス」、
そして、「動物クラスへのポインタ型」のvectorがあるとします。
適当な順番で何個かの犬クラスや猫クラスをnewで生成し、
動物クラスへのポインタ型変数に入れ、vectorに挿入していきます。
このあと、vectorから適当な要素を取り出して、
そのポインタが犬のインスタンスを指しているのか、
猫のインスタンスを指しているのかを判別するにはどういう方法があるでしょうか?
例えば識別の為のメンバ変数とかメソッドを作っておき、
1が帰ってきたら犬、2が帰ってきたら猫、のようにチェックしてもいいと思うのですが、
本来そのクラス自体が種類を表しているはずなのに、
内部に自分自身の種類の識別のためのメンバ変数を持たせるというのはなんだか気持ちが悪いです。
他にもう少しましな方法というのはないでしょうか。
こういったとき、どうやるのが普通でしょうか。
■ このスレッドは過去ログ倉庫に格納されています