1. 安装Lua环境

使用Lua for Windows可以一键安装Lua环境,很方便:https://github.com/rjpcomputing/luaforwindows/releases
Lua学习教程
安装成功后,就可以使用Lua编程了。
Lua学习教程

2. Lua语法

Lua的语法很简单,这里不累赘,可以看如下教程学习。
https://www.youtube.com/watch?v=G2tUYY5pa7c&index=27&list=PL0o3fqwR2CsWg_ockSMN6FActmMOJ70t_

3. Lua与C++交互

Lua最大的特点在于其能与C++交互编程,这个功能能给我们提供很大的便利。比如,我们可以使用C++编写接口,然后供Lua脚本去调用,那么当软件需要更新功能时,我们只需更新脚本即可,不必重新编译二进制,这样就缩短了迭代的周期。

3.1 C++执行Lua脚本

首先需要包含Lua的头文件:lua.h、lauxlib.h和lualib.h。然后调用luaL_dofile(L,”test.lua”)执行lua脚本。
Lua学习教程
然后在设置页中配置头文件和库文件的路径,分别为\5.1\inlcude和\5.1\lib。
Lua学习教程
再在输入项加入lua5.1.lib和lua51.lib。
Lua学习教程
编写test.lua。
Lua学习教程
运行Lua_Test.exe后,成功打印出Hello World!
Lua学习教程
3.2 C++读取Lua变量

lua脚本。
Lua学习教程
C++代码,获取参数是通过压栈出栈的方式读取的。
Lua学习教程
3.3 C++调用Lua函数

在Lua脚本中定义函数printMsg。
Lua学习教程
C++代码中调用lua_pcall执行printMsg函数。
Lua学习教程
运行后成功执行了printMsg函数,最后打印了该函数的返回值。
Lua学习教程
3.4 C++读取Lua数组

将上述的printMsg修改下,改为打印数组值。
Lua学习教程
循环打印出数组变量。
Lua学习教程
依次打印出数组的值。
Lua学习教程
上述方法是在C++中定义数组的,下面我们尝试在lua脚本中定义数组data。
Lua学习教程
然后在C++中对data数组进行读取。
Lua学习教程
也能成功读取。
Lua学习教程

3.5 Lua调用C++函数

lua脚本中调用C++代码中的add函数,返回值存储在x中。
Lua学习教程
C++中定义add函数,并将其声明成lua的全局变量。
Lua学习教程
成功打印返回值。
Lua学习教程

相关文章:

  • 2022-12-23
  • 2021-10-01
  • 2022-01-14
  • 2021-06-01
  • 2022-02-09
  • 2022-01-05
  • 2021-08-21
猜你喜欢
  • 2021-10-07
  • 2021-08-09
  • 2021-09-16
  • 2021-10-15
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案