Lokiの継承ジェネレータ
537 ワード
Lokiはテンプレートのテンプレートクラスに非常に優れており、そのうちの1つはGenScatterHirerarchyであり、1つはGenLinearHirerarchyであり、GenScatterHirerarchyの離散特性を利用してインタフェースを生成し、GenLinearHirerarchyを利用して継承された線形関係を生成することができる.次のGenScatterHirerarchyの例を示します.
template<class T>
class MyUnitClass
{
public:
virtual T* getObj() const = 0;
};
typedef ::Loki::GenScatterHierarchy<
LOKI_TYPELIST_3(int, double, char),
MyUnitClass
>
IDCGenerator;
class DUnit : public MyUnitClass<int>
{
public:
int* getObj() const
{
return 0;
};
};