Lua栈介绍及C++调用Lua过程分析

C++向Lua传递数组中描述了C++调用Lua过程。

今天在群里看到有人问下面这段代码是什么意思?

<span style="white-space:pre">	</span>lua_newtable(L); 
	lua_pushnumber(L, -1); //push -1 into stack
	lua_rawseti(L, -2, 0); //set array[0] by -1
	for(int i = 0; i < len; i++)
	{
		lua_pushinteger(L, id[i]); //push 
		lua_rawseti(L, -2, i+1); //
	}
---------------------------------------------------------------------------------------------------------------------------------------------------------

首先从Lua栈说起。

Lua和C/C++交互使用的是Lua栈,在lua的堆栈(摘要)(http://wind-catalpa.blog.163.com/blog/static/1147535432013119103150929/)中介绍了交互过程:

假设在一个lua文件中有如下定义
-- hello.lua 文件
myName = "beauty girl"
lua的堆栈(摘要) -     哃步呼吸 - 留住来去无影的思绪

请注意红色数字,代表通信顺序:

1) C++想获取Lua

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值