C++での実行時型情報について知りました。これは、C++のtypeidキーワードを使用して実行できます。
int main()
{
//these two where user-defined class
Complex x;
Point3D y;
const type_info& s = typeid(x);
cout<<typeid(y).name()<<endl; //works...(1)
cout<<s.name()<<endl; //works...(2)
Complex * tp = new s[10]; //does not work...(3)
}
コードに示されているように、(1)と(2)のようにデータオブジェクトの種類を出力することに成功しました。
ここで、type_info/typeidを使用してメモリを割り当てたいと思います。誰かがこれを行うことができますか?それも可能ですか。仮想関数はありません。
そのような偉業は他の方法で達成できますか?仮想関数はコードのベクトル化に悪影響を与えるため、使用したくありません。