Lua - If和and,什么更快?

时间:2013-08-29 11:35:24

标签: performance if-statement lua runtime

当我用lua和lua检查两个条件时,哪个方式的运行时间更快?

if bool and somefuntion() then
    do stuff
end

if bool then
    if somefuntion() then
        do stuff
    end
end

2 个答案:

答案 0 :(得分:10)

在两个片段上运行luac -l -p,您将看到它们生成完全相同的字节码。所以写一些更清楚的东西。

它们相同的原因是Lua对以及进行了短路评估,如OllieB所述。

答案 1 :(得分:5)

Lua懒惰的评估,所以它应该没有区别。

c / c ++中的短路逻辑和(&& )效果相同