継承を使って効率よくプログラムするには?

解決


chose  2004-12-25 23:14:56  No: 55802

下のソースなんですが、OBJ1,OBJ2はOBJMANAGEを継承したと考えてください。
入力のあったナンバーに応じてnewで作成するクラスを変えたいです。
switch文を使うと長くなるので、使わないで書きたいんですが…
継承とか、ポインタあたりを使ってなんとかできないでしょうか?

void OBJMAIN::Init(void){
switch(ObjNo)
{
case 0:
    ObjManage = new _OBJ1;
    break;
case 1:
    ObjManage = new _OBJ2;
    break;
}
}


YuO  2004-12-26 00:20:26  No: 55803

インスタンス生成用の関数をクラスごとに用意して,
入力値とその関数へのポインタのmapを用意すれば,
switch文は要らなくなります。


chose  2004-12-26 01:52:36  No: 55804

お早い解答ありがとうございます。
早速組んでみます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加