LUA八股(1)
·
Lua数据类型:
值类型:nil,number,boolean,string
引用类型:table,function,userdata,thread
pairs vs ipairs
pairs:可遍历整个表,如果有key,会输出key:val,顺序随机
ipairs:从key1开始遍历,按照连续整数升序遍历key,如果找不到下一个对应的key或val为nil则中断
元表(Metatable)的作用
元表通过元方法,实现重载操作符,继承等特性
Lua 中的userdata是什么
userdata是用户自定义的数据,可以将c c++的任意数据结构的数据存入lua变量并调用,它允许lua与c语言的数据结构进行交互,但lua并不知道数据结构内部是什么,userdata实际上是一个指向内存中某个c语言数据结构的指针
主要作用是数据共享:将c的数据结构的指针传给lua,可以实现lua访问操作这些数据
拓展功能:把c语言的函数或方法绑定到userdata上,可以让lua实现原本无法实现的功能
性能优化
require的顺序:
lua虚拟机在文件里找对应的文件,找到后装在lua虚拟机
执行一遍文件内的方法
把文件最后return的东西返回回去
如果重复require,不会多次执行文件,而是返回缓存里的结果
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)