function CreatEnumTable(tbl, index)
assert(type(tbl) == "table")
local enumtbl = {}
local enumindex = index or 0
for i, v in ipairs(tbl) do
enumtbl[v] = enumindex + i
end
return enumtbl
end
EnumTable =
{
"ET1",
"ET2",
}
EnumTable = CreatEnumTable(EnumTable)
print(EnumTable.ET1)
print(EnumTable.ET2)
http://www.cppblog.com/jianguhan/archive/2008/10/26/65066.aspx?opt=admin