• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Lua函数声明与调用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

lua编程中,我们经常也会遇到函数的声明定义和调用。

【1】lua中函数定义与调用的方法

lua有两种函数定义和调用的方法(本质都是用属性,方式不同而已):

(1)点号形式

(2)冒号形式

两种方法的联系:

(1)相同点:本质都是用属性方式

(2)不同点:用冒号形式定义的函数默认会有一个参数self。self实质指向表本身(类似于C++中的this)。

【2】两种方法的定义调用实例对比

综上可知,两种方式会有四种组合需求:

(1)点号定义 && 点号访问

_M = {value = 10}

function _M.set_value(_M, new_value)
    _M.value = new_value
end

function _M.print_sum(_M)
    print(_M.value + _M.value)
end

print(_M.value)
_M.set_value(_M, 20)
print(_M.value)
_M.print_sum(_M)

--[[
10
20
40
--]]

(2)冒号定义 && 冒号访问

_M = {value = 10}

function _M:set_value(new_value)
    self.value = new_value
end

function _M:print_sum()
    print(self.value + self.value)
end

print(_M.value)
_M:set_value(20)
print(_M.value)
_M:print_sum()

--[[
10
20
40
--]]

(3)点号定义 && 冒号访问

_M = {value = 10}

function _M.set_value(_M, new_value)
    _M.value = new_value
end

function _M.print_sum(_M)
    print(_M.value + _M.value)
end

print(_M.value)
_M:set_value(20)
print(_M.value)
_M:print_sum()

--[[
10
20
40
--]]

 (4)冒号定义 && 点号访问

_M = {value = 10}

function _M:set_value(new_value)
    self.value = new_value
end

function _M:print_sum()
    print(self.value + self.value)
end

print(_M.value)
_M.set_value(_M, 20)
print(_M.value)
_M.print_sum(_M)

--[[
10
20
40
--]]

 

Good Good Study, Day Day Up.

顺序 选择 循环 总结


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Lua_语句_if语句_005发布时间:2022-07-22
下一篇:
Lua 5.0 参考手册发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap