有个叫做元表的东西,上次面试被问这个 啊啊啊!我记反掉了(又不常用。。。因为对性能有影响所以推荐不要完全依赖这个 最好手动实现一下)
a={
1,2,3
}
b=
setmetatable({},{__index=a});
print(b[1]) -- 1
print(b[2]) -- 2
推荐去看一下书,元表这个机制不要滥用,实际上不能叫做继承,但是继承本身其实也就是这么回事,所以也可以叫做继承,但是你需要手写一部分。顺便去了解一下lua的语法糖:
a:fuc() = a.fuc(a)
所以利用这个可以完成继承。其实我是很喜欢这个机制的,copyonwrite很棒
顺便强烈要求去把书看一边