2014-01-18 18 views
4

我不能處理由函數返回的表。任何人都可以幫助我呢?如何玩lua中返回表的函數?

local grades = { Mary = "100", Teacher="100",'4','6'} 
print "Printing grades!" 
grades.joe = "10" 
grades_copy = grades 
for k, v in ipairs(grades) do 
    -- print "Grade:" 
    -- print(k, v) 
end 
function returntable() 
    tablein = grades 
    return 'hello' 
end 

grades_copy_table = returntable 
--print(grades_copy_table) 

在上述程序我想通過函數「returntable」,它返回表來訪問表元素。

回答

4

在Lua中,函數是一流的值。

grades_copy_table = returntable 

這裏給您分配grades_copy_table功能returntable本身,而不是它的返回值。您需要調用該函數並分配返回值:

grades_copy_table = returntable()