0

ダイアグラムのクラス名の父を取得するにはどうすればよいですか?

Father *a = new Father();
a = &(FatherFactory::getCode("Goppa")); //getcode return a type Nieto 
Grandfather *c3 = a;

typeidメソッドを使用しようとしましたが、祖父のクラス名、つまりtypeid(c3).name();を取得しました。typeid(* c3).name()と書くと、Nietoクラス名が取得されます。しかし、私は父のクラス名を取得したい...

Father & FatherFactory::getCode(char* codeName)
{

   return *(new Nieto());

}

ここに画像の説明を入力してください

4

1 に答える 1

0

直接のベースの名前が必要な場合は、それを返す仮想関数を追加し、すべてのクラスに慎重に実装する必要があります。しかし、あなたが何を望んでいるのか、そしてその理由は明らかではありません.2番目の行からまだオブジェクトをリークしています。あなたの質問は奇妙です。おそらく、C++ をもっとよく学ばなければなりません

于 2013-02-20T01:46:48.507 に答える