私が直面している問題は次のとおりです。不明な型の配列array
にいくつかのデータが格納されています。しかし、関数array_getDataType()
は、配列が与えられた場合、UBIT8
の整数を返します。UBIT8
はどこかで定義された定数です。これは基本的に配列に格納された要素の型がunsigned char
であることを意味します。私は、定義された定数と実際の型の間にマップを作成する方法があるかどうか、 "BIT8"を取り込み、 "unsigned char"を返すものがあるかどうか疑問に思っていました。私は次の方法でテンプレートとは逆をする方法があることを知っています。C++で整数型キーから変数型へのテンプレート化された構造体またはマップを作成
template< typename T >
struct type2Int
{
enum { id = 0 };
};
template<> struct type2Int<unsigned char> { enum { id = UBIT8 }; };
、これは後に、その後
type.id
が、私は反対のことを行う方法を思っていたUBIT8
の定義は何だろう
type2Int<unsigned char> type;
として使用することができます。
を使用することができますがデータ型を取得していますか? –