オブジェクトの型をクラスに格納する必要があります。
これは次のようになります。
template<class T>
class box
{
private:
type_info type;
T data;
}
型情報を格納する必要がある理由は説明が複雑ですが、とにかく、これがC++で可能かどうかはわかります。
次のような命令をコンパイルしようとすると、次のようになります。
type=typeid(data);
構文エラーが発生します:
'std :: type_info'の初期化に一致しません
したがって、type_infoには引数のないコンストラクターがないようです。オブジェクトのタイプをデータに記憶することは、何らかの方法で可能ですか?