zues 发表于 2017-7-3 16:43:27

果然是程序员的游戏,一脸懵逼

xiaoxin 发表于 2017-7-4 10:03:18

2,在函数a调用函数b,比函数b作为参数传递给函数a,慢10倍!!!
这句是指后面代码里的test 8吧?

但实际那个test的两种情况都是把函数作为参数传进去了。区别只是:把function作为参数传进去之前,应该先localize一下,这样比较快。不要直接在传参时写function。

kkena 发表于 2017-7-4 10:36:28

一脸懵逼

pakeh 发表于 2017-7-4 11:06:15

一脸懵逼

kkena 发表于 2017-7-4 12:06:13

回复 8# suwuji


    这样操作,table里会有个nil啊,怎么把那nil删掉?

creat 发表于 2017-7-4 16:59:02

回复 15# kkena


    后面的值向前跟进,把空填平。这样的开销也会比remove小。
或者根本不理它,遇到nil跳过

fccd 发表于 2017-7-4 18:24:55


蓝瘦
好无奈
一脸懵逼
好好的游戏
被程序员祸害
我等萌萌哒麻瓜
该怎么活呀怎么活

creat 发表于 2017-7-4 18:47:14

回复 17# fccd


    这里只需要写写简单脚本,正常人稍微花点时间学会不难,提这个主题的玩家把程序员工作想得太简单了。
zine 发表于 2017-6-6 06:42 PM http://www.pkuxkx.com/forum/images/common/back.gif

kkena 发表于 2017-7-5 17:26:38

回复 16# creat


    不会啊
求栗子

creat 发表于 2017-7-5 19:55:08

本帖最后由 creat 于 2017-7-5 12:03 PM 编辑

回复 19# kkena-----------生成一个表
function show_test(nn)
if type(nn)~="number" then return print"需要一个数字" end
math.random()
local t={}
for i=1,nn do
t=i
end      return step_1(t,nn)      end
-----------赋值nil
function step_1(t,nn)
local n=math.random (1,nn)
local m=math.random (n,nn)
t,t,t=nil,nil,nil
return step_2(t)
end
-----------填充
function step_2(t)
local n=0
for i=1,table.maxn(t)
do
      if not t then n=n+1
      elseif n~=0 then t=t t=nil
      end      end      return step_3(t)end
-----------验证
function step_3(t)
for i,v in ipairs (t)
do print (i,v)
end
end
页: 1 [2] 3
查看完整版本: 给你的lua提速