搜索路径在搜索一个Lua文件时,函数require使用的路径与典型的路径略有不同。典型的路径是很多目录组成的列表,并在其中搜索指定的文件。不过,ISO C(Lua语言依赖的抽象平台)并没有目录的概念。所以,函数require使用的路径是一组模板,其中的每项都指定了将模块名(函数require的参数)转换为文件名的方式。对于每个模板,函数require会用模块名来替换每一个问号,然后检查结果是否存在            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-05 11:37:42
                            
                                148阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在lua中我们无法对两个table进行操作,例如两个表相加、相减、串连等操作。因此 Lua 提供了元表(Metatable)和元方法,允许我们操作改变table,每个操作关联了对应的元方法。设置元表setmetatable(mytable,mymetatable) 对指定 mytable设置元表(mymetatable)。mytable={}
mymetatable={}
setmetatable            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-23 21:20:01
                            
                                137阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            作为配置语言是lua的一个重要应用,lua文件在配置应用中非常灵活,可以直接读取文件中的全局量的值,也可以读取表以及嵌套表。一、lua使用方式个人理解,根据应用的场景和复杂程度,可以分为以下几种情况:1、场景较简单,lua文件中使用全局量配置值如:test.lua-- configguration file for probram c
width = 200
 height = 300
 back            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-07 09:51:32
                            
                                159阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             1.cjson.encode
 cjson.decode
和System.IO.File进行json文件的读写。m.JsonPath = 'Assets/debug_cfg.json'
   local text = File.ReadAllText(m.JsonPath)
   local jsonInfos = cjson.decode(text)
   m.templateKey            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-11 00:00:51
                            
                                416阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            这个库通过表os实现os.clock ()功能:返回一个程序使用CPU时间的一个近似值例如:local x = os.clock();
print(os.clock())
local s = 0;
for i = 1, 100000000 do
      s = s + i;
end
print(string.format("elapsed time : %.2f\n", os.clock()             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-31 13:31:00
                            
                                95阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            操作系统库包含了文件管理,系统时钟等等与操作系统相关信息。这些函数定义在表(table)os中。定义该库时考虑到Lua的可移植性,因为Lua是以ANSI C写成的,所以只能使用ANSI定义的一些标准函数。许多的系统属性并不包含在ANSI定义中,例如目录管理,套接字等等。所以在系统库里并没有提供这些功能。另外有一些没有包含在主体发行版中的Lua库提供了操作系统扩展属性的访问。例如posix库,提供了            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-07 14:40:59
                            
                                90阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在游戏开发中会经常使用到lua作为游戏逻辑层的脚本语言,各种优势就不说了,虽然平时用的比较多,但对lua语言本身和内部的一些实现并不是很了解,让我们先从lua的require入手来一探require的各种用法吧。require其实类似与C/C++中的#include,就是加载一个指定名称的模块进来,该模块可以来自于lua,也可能来自于C/C++,在lua虚拟机启动时,默认会给我们预先加载好一些模块            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-17 16:53:50
                            
                                902阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            (1)lua 和 C++之间的交互的基本知识:      lua 和 C++ 之间的数据交互通过堆栈进行,栈中的数据通过索引值进行定位,(栈就像是一个容器一样,放进去的东西都要有标号)其中栈顶是-1,栈底是1,也就是第 1 个入栈的在栈底;也可以这么说:正数表示相对于栈底的位置(位移),负数表示相对于栈顶的位置(位移);(2)计算和清空栈            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-21 09:27:31
                            
                                120阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Luacom内部使用的应该是UTF-8编码所以直接使用ANSI编码的中文文件名,会打不开研究了几天,写了一个ANSI <-> UNICODE <-> UTF-8的lua扩展,以便使用基本上应该还可以用(-_-|)(链接中的永硕网盘提供相应的Unicode.dll下载)更新历史:     2008-11-3 修正getallfilew            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-16 05:36:09
                            
                                307阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            lua table (表)table是lua的一种数据结构,用来帮助我们创建不同的数据类型,如 : 数组、字典。lua table 使用关联型数组,你可以使用任意类型的值来作数组的索引,但这个值不能为Nil.lua table 是不固定大小的,你可以根据自己的需要进行扩容。lua 也是通过table来解决模块(module) 、包(package)和对象(Objec)的。例如 string.for            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-13 09:33:29
                            
                                56阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            路径概念的目的:引入路径概念目的最终是找到我们所需要的目录或文件。比如我们想要编辑 file.txt 文件,我们首先要知道他存放在哪里,也就是说我们要指出他所在的位置,这时就要用到路径了。路径的构成要素:路径是由目录或目录和文件名构成的。比如/etc/X11 就是一个路径,而/etc/X11/xorg.conf也是一个路径。也就是说路径可以是目录的组合,分级深入进去,也可以是文录+文件构成。比如我            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-20 09:57:48
                            
                                33阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             右键一个Project,可以发现有两个地方设置Include的相关目录: 1. VC++ Directories -> Include Directories 2. C/C++ -> General -> Additional Include Directories   不知道具体有什么区别,后在MSDN上得到答案: “VC++ Directories -> I            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-22 17:15:58
                            
                                68阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            FuncStateproto结构数组保存函数原型信息;prev保存父函数体指针;actvar保存定义的局部变量;upvalues保存upvalueLua源码中,专门有一个结构体FuncState用来保存函数相关的信息.其实,即使没有创建任何函数,对于Lua而言也有一个最外层的FuncState数据.这个结构体的定义:typedef struct FuncState {
  Proto *f;  /            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-15 06:08:09
                            
                                53阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            写lua这么久了,也知道怎么样用lua来实现所谓的面向对象。下面这段代码是我常用来new一个新实例对象的:local Object = {a = 123}
function Object:new (data)  
    local data = data or {}
    setmetatable(data, {__index = self})   
    return data   
en            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-22 20:37:39
                            
                                42阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、编译LUA第1步: 从官方主页www.lua.org下载Lua源代码,最新版本为5.1.2。 解压之后找到“src”文件夹,这里面就是Lua了,不过还不能直接使用。第2步: 使用任意ANSI C编译器,在这里使用VS2005编译LUA。具体步骤如下: 1、新建一个空的Console工程,在这里该工程名暂为“lua” 2、将src中的文件全部拷贝到该项目文件夹下 3、根据生成的文件来添加需要编译            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-18 10:32:58
                            
                                112阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            学不可以以已最近自己写项目的时候用到了lua,以此写一下。Linux下安装Lua环境# 安装lua需要的目录依赖
yum install libtermcap-devel ncurses-devel libevent-devel readline-devel
# 安装lua环境
curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz #
# 解压文件            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-30 08:15:31
                            
                                135阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            路径依赖(Path-Dependence),又译为路径依赖性,它的特定含义是指人类社会中的技术演进或制度变迁均有类似于物理学中的惯性,即一旦进入某一路径(无论是“好”还是“坏”)就可能对这种路径产生依赖。一旦人们做了某种选择,就好比走上了一条不归之路,惯性的力量会使这一选择不断自我强化,并让你轻易走不出去。第一个使“路径依赖”理论声名远播的是道格拉斯·诺思,由于用“路径依赖”理论成功地阐释了经济制            
                
         
            
            
            
            一.概述我们实现路径查找,最基本的操作还是得遍历并搜索图,此处基于深度优先搜索来完成。其搜索的过程是比较简单的。我们添加了edgeTo[]整型数组,这个整型数组会记录起点s到任意顶点的路径。 如果我们把顶点设定为0,那么它的搜索可以表示为下图: edge[2]=0 即顶点0到顶点2路径上的上一个顶点为0 edge[1]=2 即顶点0到顶点1路径上的上一个顶点为2 以此类推。。。要找整个完整路径时:            
                
         
            
            
            
            从新手码农到高级架构师,要经过几步?要多努力,才能成为为人倚重的技术专家?本文将为你带来一张程序员发展路径图,但你需要知道的是,天下没有普适的道理,具体问题还需具体分析,实践才能出真知。架构师的“内功”我认为,架构师的内功主要包含三部分:判断力、执行力、创新力,简单解释如下:判断力: 能够准确判断系统的复杂度在哪里,就像武侠高手一样,能准确地看出对手的破绽和弱点。执行力: 能够            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-17 11:03:26
                            
                                45阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Lua文件加载执行字符串最基本是直接用LuaEnv.DoString执行一个字符串,当然,字符串得符合Lua语法
比如:/* C# Code */
using UnityEngine;
using System.Collections;
using XLua;
namespace Tutorial
{
    public class ByString : MonoBehaviour
    {            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-18 15:43:03
                            
                                101阅读