下のソースなんですが、OBJ1,OBJ2はOBJMANAGEを継承したと考えてください。
入力のあったナンバーに応じてnewで作成するクラスを変えたいです。
switch文を使うと長くなるので、使わないで書きたいんですが…
継承とか、ポインタあたりを使ってなんとかできないでしょうか?
void OBJMAIN::Init(void){
switch(ObjNo)
{
case 0:
ObjManage = new _OBJ1;
break;
case 1:
ObjManage = new _OBJ2;
break;
}
}
インスタンス生成用の関数をクラスごとに用意して,
入力値とその関数へのポインタのmapを用意すれば,
switch文は要らなくなります。
お早い解答ありがとうございます。
早速組んでみます。