class TypeInfo{
public:
int id;
const char* name;
public:
static const TypeInfo* get(int id){
return (&typeList][id]);
}
private:
static const TypeInfo typeList[];
};
/*static*/ const TypeInfo TypeInfo::typeList[] =
{
// id name
{ 0, "type1" },
{ 1, "type2" },
};
上面的代码很好的在C++的框架内对一组固定不变的class进行了初始化。