Цитата |
---|
Nikolay написал: Если надо обработать много (много) в цикле, то да. В обычной практике - это просто дело вкуса и привычки. Код |
---|
local k = 10local s = 100
for i = 1 , 10000000 do
k, s = math.max (k, s), math.min (k, s)
k, s = k * i, s * i
k, s = math.min (k, s), math.max (k, s)
end |
[Done] exited with code=0 in 2.068 seconds
Код |
---|
local math_max = math.max
local math_min = math.min
local k = 10
local s = 100
for i = 1 , 10000000 do
k, s = math_max(k, s), math_min(k, s)
k, s = k * i, s * i
k, s = math_min(k, s), math_max(k, s)
end |
[Done] exited with code=0 in 1.597 seconds |
этот пример очень плохой
результат его запуска показывает что ускорение всего в 1.5 раза.
-----------
в этом тесте много накладных расходов не связанных с данным вопросом.
если же интересует именно присвоение функции локальной переменной то
надо делать лишь эти функции т е
сравнивать
k, s = math.max (k, s), math.min (k, s)
и
k, s = math_max(k, s), math_min(k, s)
-------------------
в этом случае получаем 0.6 мкс и 0.2 мкс т е 3 раза