2013-06-12 4 views
2

Я хотел знать, возможна ли функциональность, которую я пытаюсь реализовать в lua.Несколько хэшей внутри хэша в lua

У меня есть глобальный хэш, называемый Существами. Существа содержат суб-хэши, называемые млекопитающими, земноводными, птицами, насекомыми.

Млекопитающие имеют субахели, называемые китами, слонами. У амфибий есть суб-хеши, называемые лягушками, личинки. У птиц есть суб-хэши, называемые Орлом, попугай. Насекомые имеют суб-хэши, называемые стрекозой, комаром.

Я подсчитываю частоты всех этих существ из текстового файла. Например, если я рассчитывать количество орлов в текстовом файле, чтобы быть 100, я должен хранить, что 100 в

Creatures[Birds[Eagle]] = 100 

Можно ли в Lua? Как это можно сделать? Я очень новичок в lua, и, пожалуйста, помогите. Благодаря!

+0

Почему это связано с проводами? – greatwolf

+0

Либо 1) то, что он описывает, является примером, и он работает над расширением Wireshark или 2) кто-то смущенно отметил его или 3) он надеялся привлечь внимание людей, которые ищут тег «wirehark», но не «lua», в надежде, что они могут быть знакомы с Lua. В любом случае нет очевидного способа, в котором Wireshark имеет отношение к нему (проблема, как описано, является общей), поэтому тега не должно быть там. Я удалил его. –

+0

1) и 3) являются причинами. Сожалею! –

ответ

3

Код, который вы указали, является юридическим Lua, но, вероятно, не то, что вы хотите, либо Creatures.Birds.Eagle = 100, либо Creatures[kind][name] = 100, либо их изменение.

2

может быть, ваше существо таблицы, как это определить:

Creatures = { 
    ["mammals"] = { 
     ["whales"] = 10, 
     ["elephants"] = 10, 
    } 
    ["amphibians"] = { 
     ["frogs"] = 10, 
     ["larvae"] = 10, 
    } 
    ["birds"] = { 
     ["Eagle"] = 10, 
     ["parakeet"] = 10, 
    } 
    ["insects"] = { 
     ["dragonfly"] = 10, 
     ["mosquito"] = 10, 
    } 
} 

то вам, возможно, потребуется определить функцию для инициализации таблицы:

function InitCreature()  XXX end 

в этой функции вы можете прочитать текстовый файл и назначение table.something like that.