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;
	};
};