そんなのよりさ、
CORBA::Object_var obj = 〜; Hoge_var hoge = Hoge::_narrow(obj); if (!CORBA::is_nil(hoge)) { 〜 return; } Fuga_var fuga = Fuga::_narrow(obj); if (!CORBA::is_nil(fuga)) { 〜 return; }
みたいな感じになるほうがあたまいたい
多態性(ポリモーフィズム)を目論んでいたはずが、いつのまにかコードにif文とswitch文の渦が紛れ込んでる。 switch ( FLAG ) { case 1: { object = new ObjectA(); } case 2: { object = new...
そんなのよりさ、 CORBA::Object_var obj = 〜; Hoge_var hoge = Hoge::_narrow(obj); if (!CORBA::is_nil(hoge)) { 〜 return; } Fuga_var fuga = Fuga::_narrow(obj); if (!CORBA::is_nil(fuga)) { 〜 return; } みたいな感じになるほ...
そんなあなたに Factory Method パターン。 ……であってるか? デザパタは生齧りだぜー。