Lua语言是支持尾调用消除的(tail-call elimaination),这意味着Lua语言可以正确尾递归(tail-recursive)。尾调用是被当做函数调用使用的跳转。当一个函数的最后一个动作是调用另一个函数而没有再进行其他工作时,就形成了尾调用。比如下面的代码中对函数g的调用就是一个尾调用。function f (x)
    x = x + 1;
    return g(x)
en            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-01 21:28:23
                            
                                62阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言在使用lua 的开发中,有很多异步调用的场景存在,当某个场景中存在多个异步回调操作且该系列操作中每个操作必须依赖上一个操作的完成,这就形成了回调地狱,示例代码:function f()
    f1(function ()
        f2(function ()
            f3(function ()
                --coding            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-03 21:30:22
                            
                                142阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            lua函数返回值
学习目标
	lua_call与返回值
	lua_pcall
	lua_getglobal
	lua_gettop(L)		//参数个数
lua_getglobal:把全局变量 name 里的值压入堆栈
lua_call
	调用一个函数void lua_call(lua_State*L,int nargs,int nresults);//nargs是参数的个数 nresults是返            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-05 16:28:35
                            
                                131阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            lua中的require机制    为了方便代码管理,通常会把lua代码分成不同的模块,然后在通过require函数把它们加载进来。现在看看lua的require的处理流程。1、require机制相关的数据和函数    package.path:保存加载外部模块(lua中"模块"和"文件"这两个概念的分界比较含糊,因为这个值在不同的时刻会            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-29 15:07:02
                            
                                42阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.函数函数有两种用途: 完成指定的任务,这种情况下函数作为调用语句使用; 计算并返回值,这种情况下函数作为赋值语句的表达式使用。 1.1 语法function func_name (arguments-list)
     statements-list;
 end; 示例 function foo (x) return 2*x end
 foo = function (x) return 2*            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-26 12:55:12
                            
                                185阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.lua函数可以返回多个返回值,在return后要返回的值得列表即可返回多值2.lua总是调整函数返回值的个数去适应调用环境,当作为一个语句调用函数时,所有返回值被忽略3当作为表达式调用函数,有以下几种情况:a.当调用作为表达式的最后一个参数或者仅有一个参数时,根据变量的个数函数尽可能多的返回多个值,不足的补nil,超出舍去b.其他情况,函数调用仅仅返回第一个值4.函数调用作为函数参数被调用时,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-06 14:12:14
                            
                                329阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            关键词:Lua函数  1 函数格式function MyFunc(param)
     -- Do something
end注意:一个函数若只有一个参数,并且此参数是一个字符串或table构造式,那么圆括号便可以省略掉。print "Hello World"  <- 等价 -> print("Hello World")2 多重返回值  Lua函数可以返回多个值:function f            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-19 21:33:36
                            
                                119阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Lua提供高级的require函数来加载运行库,lua中的require函数功能主要有: 
 
  1、require函数会搜索目录加载文件 
 
  2、require会判断是否文件已经加载避免重复加载同一文件。 
 
  由于上述特征,require在Lua中是加载库的更好的函数。require使用的 
 路径和普通我们看到的路径还有些区别,我们一般见到的路径都是一个目录列表。requi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-18 18:51:44
                            
                                108阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            加载指定的模块。首先函数会在 package.loaded 这个表中查看是否已经加载 了 modname 这个模块。如果是,那么 require 会返回保存在 package.loaded[modname]的值。否则它将尝 试去查找一个加载该模块的加载器。require 是由 package.searchers 引导来查找加载器的 。修改 package.searchers 可以修改 requir            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-26 08:39:18
                            
                                31阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              本文主要参考了《lua程序设计》  为了方便代码管理,通常会把lua代码分成不同的模块,然后在通过require函数把它们加载进来。现在看看lua的require的处理流程:例如require(modename)一.首先lua会检查package.loaded表,如果package.loaded[modename]中有值,则用此值作为require的返回值,查找结束。因此,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-10 00:30:18
                            
                                124阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            math.abs (x)   功能:返回x的绝对值   2、math.acos(x)   功能:函数返回参数x的反余弦值。参数x 应当在-1和1之间   3、math.asin (x)   功能:函数返回参数x的反正弦值。参数x 应当在-1和1之间。   4、math.atan (x)   功能:函数返回参数x的反正切值   5、math.atan2 (x, y)   功能:函数计算y/x的反正切            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-07 23:29:13
                            
                                26阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            记得很久以前,刚开始接触Quick,那时候尝试过一次这样的操作,不过失败了。因为那时候还年幼,对这里面的一套机制不是太熟悉。现在回头再做这样的事,遇到了问题,但是都很好的根据自己的理解给解决了。现在记录下,我tolua成功的过程,在写blog的过程中,更熟练其中的原理。PS:网上关于quick tolua的blog都有点过时了(dualface的quick官网文章),具体的过程,还是要自己多注意。            
                
         
            
            
            
            lambda匿名函数透析目录1       匿名函数的作用... 1
2       匿名函数的格式... 1
3       匿名函数实例代码... 31         匿名函数的作用使用一个新东西之前,先要弄清楚这东西有什么好处,有什么作用,要不要用。匿名函数的作用是提供一种一般只在某处使用一次,而且代码长度比较            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-16 20:33:21
                            
                                43阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Lua的require小结 在游戏开发中会经常使用到lua作为游戏逻辑层的脚本语言,各种优势就不说了,虽然平时用的比较多,但对lua语言本身和内部的一些实现并不是很了解,让我们先从lua的require入手来一探require的各种用法吧。require其实类似与C/C++中的#include,就是加载一个指定名称的模块进来,该模块可以来自于lua,也可能来自于C/C++,在lua虚拟机启动时,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-03 07:17:25
                            
                                152阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            为了感谢昨天忠实读者,今天赶快在贴出今天又研究通的一些关于require的用法,这个是本质的用法,同时给大家一个lua面向对象思想的例子,闲话不多说了,目录结构还和上一篇一样:我们可以看到require这个工程下面有两个lua文件,大家一定很奇怪上次的c++文件哪去了,这次顺便给大家推荐个lua的调试工具luaEdit2010,我的资源中也有,贴个连接这里是下载地址,这个工具可以方便大家去调试和编            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-23 20:08:43
                            
                                48阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Lua提供了一个名为require的高层函数来加载模块,但这个函数只假设了关于模块的基本概念。对于require而言,一个模块就是一段定义了一些值(函数或者包含函数的table)的代码。为了加载一个模块,只需要简单调用require "modname" 。这个函数首先会查找package.loaded表,检查modname是否加载过。如果加载过,require返回package.loaded[mo            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-07 14:57:07
                            
                                78阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             Lua提供高级的require函数来加载运行库。粗略的说require和dofile完成同样的功能但有两点不同:1. require会搜索目录加载文件2. require会判断是否文件已经加载避免重复加载同一文件。由于上述特征,require在Lua中是加载库的更好的函数。require使用的路径和普通我们看到的路径还有些区别,我们一般见到的路径都是一个目录列表。r            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-23 10:32:18
                            
                                66阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1 定义格式函数构成代码执行的逻辑结构。在Go语言中,函数的基本组成为:关键字func、函数名、参数列表、返回值、函数体和返回语句。 Go 语言函数定义格式如下:  func FuncName(/*参数列表*/) (o1 type1, o2 type2/*返回类型*/) {
    //函数体
    return v1, v2 //返回多个值
}  函数定义说明:func:函数由关键            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-16 21:41:56
                            
                                39阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Go语言基础之函数函数函数是基本的代码块,用于执行一个任务。Go 语言最少有个 main() 函数。你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务。函数声明告诉了编译器函数的名称,返回类型,和参数。Go 语言标准库提供了多种可动用的内置的函数。例如,len() 函数可以接受不同类型参数并返回该类型的长度。如果我们传入的是字符串则返回字符串的长度,如果传入的是数组,则返回数组中包含的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-11 12:23:15
                            
                                50阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            ## 函数返回值在R语言中的重要性
在编程中,函数是复用代码的基本单元,而返回值则是函数最核心的概念之一。在R语言中,函数不仅可以执行特定任务,还能把结果返还给调用者。本文将深入探讨R语言中函数的返回值,并通过代码示例来展示其实际用途。
### 函数的基本概念
在R中,函数的定义非常简单,通常用`function`关键字。函数可以接受多个参数,并通过`return`语句返回一个值。如果没有显            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-09-29 03:20:30
                            
                                157阅读