关于require和package.loadlib的介绍和它们的关系,以及它们在加载C模块时不同表现
2016-09-05 16:17
429 查看
package.loadlib
package.loadlib(#1,#2) – > 函数,用于加载C模块中的对外函数,但注意,仅仅是加载,并不运行。/#1:模块路径
/#2:调用函数名(一般定义在.def文件中)
返回:一个lua函数
require
require用来加载一个模块,不论是C模块还是Lua模块。当加载一个C模块时,它会以传入的模块路径和luaopen_<模块名>来调用package.loadlib(模块路径,luaopen_<模块名>),如果返回一个函数,则运行它,返回nil,则返回错误代码。luaopen_<模块名>函数用于将模块中的对外函数通通注册到Lua中,并在栈中压入一个同模块名的table,供lua调用。相关文章推荐
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上升级glibc
- 关于log4j2的重新加载,以及不同级别日志输出到不同日志文件
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 关于iOS中图片加载的两种方式的区别以及和内存的关系
- 关于如何在Android源码目录中建立自己的C工程,并用mm命令单独进行该C工程模块的编译,以及Android.mk的使用介绍(2)
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结
- 关于编码问题以及不同平台编码及string与编码的关系
- 引用模块和加载库(extend,include,require,load )
- webpack里CommonJS的require与ES6 的module.exports加载模块有何不同
- 关于hibernate中的load,get,以及延迟加载问题
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结 .
- 关于log4j2的重新加载,以及不同级别日志输出到不同日志文件
- 关于如何在Android源码目录中建立自己的C工程,并用mm命令单独进行该C工程模块的编译,以及Android.mk的使用介绍(1)
- 关于angular项目按需加载文件的两种方法(oclazyload&require)
- 以rtl8169 pci简单介绍pic module加载过程以及部分数据结构关系图
- 关于log4j2的重新加载,以及不同级别日志输出到不同日志文件
- 关于log4j2的重新加载,以及不同级别日志输出到不同日志文件
- 关于gcc、glibc和binutils模块之间的关系,以及在现有系统上如何升级的总结