在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
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. 顺序 选择 循环 总结 |
请发表评论