lua中利用访问控制,自动载入lua文件,提升开发效率。

lua语言非常灵活,开发者发挥的空间很大,模拟oop,使用xml等,此篇文章将向大家介绍如何添加访问控制,不用此来实现 lua自动载入机制 提示开发效率。

类似java、as3等语言,访问没有定义的属性、方法、或者非公有属性时会报错,再编译阶段这些错就能暴漏出来,lua则不能,这些访问对他都是合法的,如果你使用lua做一些较大型的开发,这种能合法调用但不合法的访问,会给你带来很多坑,访问控制作者认为还是非常有必要的。

lua中导入一个moudle,常规做法是使用require(“**.**.**”),lua自动载入机制目的就是省略这一步,一定程度上有助于开发效率的提升。

先来看看访问控制类 

ImmutableMetatable.lua

--- Author: terran
--  Date: 27/9/2013 15:03	

local ImmutableMetatable = {};
local M  = ImmutableMetatable;

function declare (item,name, initval)
   rawset(item, name, initval)
   item.ImmutableMetatable__declaredNames[name] = true
end

function  M.__newindex(t, n, v)
	if(rawget(t,"ImmutableMetatable__declaredNames") == nil) t
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值