< 魔兽世界百科 >
您尚未注册/登录
搜索帮助
搜索提示已开启 输入搜索关键词时将自动出现其他玩家的同类搜索词 开启搜索提示 搜索关键词时仍按普通搜索提交框方式输入 什么是智能搜索提示
职业技能 (1199)专业技能 (423)
武器 (2209)防具 (15620)药品 (0)任务道具 (1677)材料 (0)其它 (10399)
商人NPC (981)任务NPC (952)怪物 (7220)其他NPC (10639)
1-10级11-20级21-30级31-40级41-50级50级以上
全部地图 (10091)
WOW动态 (267)WOW学院 (778)职业研究 (26983)副本心得 (1317)天赋交流 (559)任务攻略 (1863)专业技能心得 (740)战场PVP (803)宏与插件交流 (222)
游戏百科 > 魔兽世界 > WOW手册 > 宏与插件交流 > 插件发布与交流 > 百科资料
资源苗 基于游戏百科共建计划 - 了解 | 加入
在魔兽世界中已有97,534项百科条目,如果你有任何可以分享的请
我是Lua初学者【2】
好东西!投票支持(6)
匿名投票,确认投票给dailytoy
资料版本 1.0,更新时间:2005年10月3日 来源地址

-by tcxxs-

SYNTAX

1、if else用法比较简单, 类似于C语言, 不过此处需要注意的是整个if只需要一个end,
哪怕用了多个elseif, 也是一个end.
例如
  if op == "+" then
    r = a + b
  elseif op == "-" then
    r = a - b
  elseif op == "*" then
    r = a*b
  elseif op == "/" then
    r = a/b
  else
    error("invalid operation")
  end

SYSTEM

1、Lua对Table占用内存的处理是自动的, 如下面这段代码
  a = {}
  a["x"] = 10
  b = a     -- `b’ refers to the same table as `a’
  print(b["x"]) --> 10
  b["x"] = 20
  print(a["x"]) --> 20
  a = nil   -- now only `b’ still refers to the table
  b = nil   -- now there are no references left to the table
b和a都指向相同的table, 只占用一块内存, 当执行到a = nil时, b仍然指向table,
而当执行到b=nil时, 因为没有指向table的变量了, 所以Lua会自动释放table所占内存

FUNCTION

1、不定参数
-- Functions can take a
-- variable number of
-- arguments.
function funky_print (...)  
for i=1, arg.n do      
print("FuNkY: " .. arg)  
end
end

funky_print("one", "two")

运行结果
FuNkY: one
FuNkY: two

程序说明
* 如果以...为参数, 则表示参数的数量不定.
* 参数将会自动存储到一个叫arg的table中.
* arg为local变量,在一个function内
* arg.n中存放参数的个数. arg[]加下标就可以遍历所有的参数.

2、把Lua变成类似XML的数据描述语言

function contact(t)  
-- add the contact ‘t’, which is  
-- stored as a table, to a database
end

contact {  
name = "64bit baboosh",  
email = "asdic.xxs@gmail.com",
url = http://blog.csdn.net/tcxxs,  
quote = [[      
There are
10 types of people    
who can understand binary.]]
}

contact {  
-- some other contact
}

程序说明
* 把function和table结合, 可以使Lua成为一种类似XML的数据描述语言
* e09中contact{...}, 是一种函数的调用方法, 不要弄混了
* [[...]]是表示多行字符串的方法
* 当使用C API时此种方式的优势更明显, 其中contact{..}部分可以另外存成一配置文件

3、Lua的函数可以有多个参数, 也可以有多个返回值, 这都是由栈(stack)实现的.
需要调用一个函数时, 就把这个函数压入栈, 然后顺序压入所有参数, 然后用
lua_call()调用这个函数. 函数返回后, 返回值也是存放在栈中. 这个过程和
汇编执行函数调用的过程是一样的.


暂时没有补充内容 您可以第一个补充内容


引用百科资源:多种方式引用本页 | 浏览引用了本页的网站/网页(141)
关闭
百科引用链使您能方便地在其他网页插入本资源的引用链接,让优秀的百科资源通过引用链对更多玩家造成帮助。
越多的玩家通过您的引用链访问百科将为您带来更多的百科威望!

引用本页地址(点击复制到粘贴板) 粘贴到你想引用的网页。
HTML形式的传播:

论坛形式的传播:

关闭
本页有下列读者,字体越大、颜色越深的玩家阅读本页的次数越多。
*如果您的玩家名称未刊载于此,因为只有百科成员才能记录阅读体验。
在魔兽世界中已有97,534项百科条目,如果你有任何可以分享的请

本页由 dailytoy 创建,希望能用你我的开放思维帮助下得到不断完善。
共有 0 条评论 浏览全部评论
匿名发表,您可以马上注册/登录成为百科玩家后用属于自己个性名称发表。

《我是Lua初学者【2】》的任何感想和见解请发于此。

百科历史纪录
请和我们一起建造全球最大的人工游戏百科
在本目录提交一笔资料 - 我们的计划 - 成为目录编辑
搜游的搜索内容将在 游戏百科共建计划 的基础上不断完善与加强。
当前目录下还没有目录编辑负责管理。
 

想把自己的网站也加上搜索功能?来这里获得免费的魔兽世界搜索条

搜游大全 - 免责声明 - 投放广告 - 商务合作

© 2005 - 2007 搜友游戏百科 SOUYO.com