1.前言 偶最近在学习Lua, 所以写出心得和大家共享, 争取一天写一篇, 嘿嘿. 才开始学所以内容很浅, 希望大家包涵. Lua是一种完全免费的脚本语言, 可以和C/C++语言紧密结合, 它的官方网站在http://www.lua.org. 在网站上可以下载到lua的源码, 没有可 执行版本, 不过不用担心, 因为lua源码可以在任何一种C/C++的编译器上编译. 如
1.简介 Lua语言只有一种基本数据结构, 那就是table, 所有其他数据结构如数组啦, 类啦, 都可以由table实现. 2.table的下标 例e05.lua -- Arrays myData = {} myData[0] = “foo” myData[1] = 42 -- Hash tables myData[“bar”] = “baz”
1. 函数的使用 以下程序演示了如何在Lua中使用函数, 及局部变量 例e02.lua -- functions function pythagorean(a, b) local c2 = a^2 + b^2 return sqrt(c2) end print(pythagorean(3,4)) 运行结果 5 程序说明 在Lua中函数的定义格式为
.不定参数 例e07.lua -- Functions can take a -- variable number of -- arguments. function funky_print (...) for i=1, arg.n do print("FuNkY: " .. arg[i]) end end funky_print("one", "two
1.简介 偶们这次主要说说怎么由Lua定义函数, 然后在C或者C++中调用. 这里偶们 暂不涉及C++的对象问题, 只讨论调用函数的参数, 返回值和全局变量的使用. 2.程序 这里偶们在e12.lua里先定义一个简单的add(), x,y为加法的两个参数, return 直接返回相加后的结果. 例e12.lua -- add two numbers funct
1.简介 Lua与C/C++结合是很紧密的, Lua与C++交互是建立在Lua与C的基础上的, 所 以偶先从Lua与C讲起. 正如第一讲所说, 运行Lua程序或者说调用Lua主要有两种方式: * 通过命令行执行"Lua"命令 * 通过Lua的C库 虽然此前偶们一直用第一种方式, 但偶要告诉你, 通过Lua的C库执行才是游戏中 常用的方式. 2.Lua的C库
1.前言 上次偶说到从C/C++中调用Lua的函数, 然后就有朋友问从Lua中如何调用C/C++的 函数, 所以偶们这次就来说说这个问题. 首先偶们会在C++中建立一个函数, 然后 告知Lua有这个函数, 最后再执行它. 另外, 由于函数不是在Lua中定义的, 所以 无法确定函数的正确性, 可能在调用过程中会出错, 因此偶们还会说说Lua出错处 理的问题. 2.Lua
在引擎上测试从脚本获取汉字 LuaPlus::LuaStateOwner state;
state->DoFile("test.lua");
LuaPlus::LuaObject kk=state->GetGlobal("text");
//luaplus中有GetWString(),返回值类型是lua_WChar
const char* text3=kk.GetString();
s
由于要返回表,我们的C++函数需要返回 luabind::object 对象。另外,参数里需要定义一个 lua_State * 指针。 C++ 函数可以这么定义: luabind::object myfunc(
const std::string & param, // 参数
lua_State* lstate );
用 luabind 绑定函数时,需要指定绑定策略为
Lua是一种完全免费的脚本语言, 它的官方网站在http://www.lua.org.在网站上可以下载到lua的源码, 没有可 执行版本, 不过不用担心, 因为lua源码可以在任何一种C/C++的编译器上编译. 如果要学习Lua, 官方网站上的Reference是必备的,上面有每个命令的用法,非常详 细。 参考手册 http://www.lua.org/manual/5.0/ 作者写的Progra
1.前言 偶最近在学习Lua, 所以写出心得和大家共享, 争取一天写一篇, 嘿嘿. 才开始学所以内容很浅, 希望大家包涵. Lua是一种完全免费的脚本语言, 可以和C/C++语言紧密结合, 它的官方网站在http://www.lua.org. 在网站上可以下载到lua的源码, 没有可 执行版本, 不过不用担心, 因为lua源码可以在任何一种C/C++的编译器上编译. 如果要学习Lua, 官方网站上
1. 函数的使用 以下程序演示了如何在Lua中使用函数, 及局部变量 例e02.lua -- functions function pythagorean(a, b) local c2 = a^2 + b^2 return sqrt(c2) end print(pythagorean(3,4)) 运行结果 5 程序说明 在Lua中函数的定义格式为: function 函数
1.简介 Lua语言只有一种基本数据结构, 那就是table, 所有其他数据结构如数组啦, 类啦, 都可以由table实现. 2.table的下标 例e05.lua -- Arrays myData = {} myData[0] = “foo” myData[1] = 42 -- Hash tables myData[“bar”] = “baz” -- Iterate through
1.不定参数 例e07.lua -- Functions can take a -- variable number of -- arguments. function funky_print (...) for i=1, arg.n do print("FuNkY: " .. arg[i]) end end funky_print("one", "
1.简介 Lua与C/C++结合是很紧密的, Lua与C++交互是建立在Lua与C的基础上的, 所 以偶先从Lua与C讲起. 正如第一讲所说, 运行Lua程序或者说调用Lua主要有两种方式: * 通过命令行执行"Lua"命令 * 通过Lua的C库 虽然此前偶们一直用第一种方式, 但偶要告诉你, 通过Lua的C库执行才是游戏中 常用的方式. 2.Lua的C库 Lua的C库可以做为Shared Lib
参考英文文档http://tonyandpaige.com/tutorials/lua2.html 1.简介 偶们这次主要说说怎么由Lua定义函数, 然后在C或者C++中调用. 这里偶们 暂不涉及C++的对象问题, 只讨论调用函数的参数, 返回值和全局变量的使用. 2. 这里偶们在e12.lua里先定义一个简单的add(), x,y为加法的两个参数, return 直接返回相加后的结果. 例e
1.前言 上次偶说到从C/C++中调用Lua的函数, 然后就有朋友问从Lua中如何调用C/C++的 函数, 所以偶们这次就来说说这个问题. 首先偶们会在C++中建立一个函数, 然后 告知Lua有这个函数, 最后再执行它. 另外, 由于函数不是在Lua中定义的, 所以 无法确定函数的正确性, 可能在调用过程中会出错, 因此偶们还会说说Lua出错处 理的问题. 2.Lua中调用C函数 在lua中是以函
-- Example 1 -- First Program. -- Classic hello program.
print("hello")
-------- Output ------
hello -- Example 2 -- Comments. -- Single line comments in Lua start with double hyphen.
-- Example 6 -- Case Sensitive. -- Lua is case sensitive so all variable names & keywords
-- must be in correct case.
ab=1
Ab=2
AB=3
print(ab,Ab,AB)
-------- Output ------
1 2 3 -- E
-- Example 11 -- Numbers. -- Multiple assignment showing different number formats.
-- Two dots (..) are used to concatenate strings (or a
-- string and a number).
a,b,c,d,e = 1, 1.123, 1E9, -123,