lua 中的函数 如果获取自己的名称?

tb={]
function tb:func1()
--在这里 如何取得func1 这个函数名字
end
在外面 可以 for k,v in pairs(tb) do 来取得每个函数的名字。。但是在函数里面 应该获取呢?

可以获得 但不推荐用 因为debug库尽量少用的好

function fun()
print(debug.getinfo(1).name)
end
fun()

debug库的东西运行起来效率普遍不高 而且有风险

再就是debug库很多内容破坏了语法里的local特性 导致可在外部看到局部变量

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-13
函数内部, 本身就在函数定义的地方, 应该是直接就知道自己的名字.
相似回答