zoukankan      html  css  js  c++  java
  • lua 函数

    1、函数只有一个参数,且该参数为table 或 字符串时,调用函数可以省略()

      print"hello world" 同 print("hello world")

      type{} 同 type({})

    2、函数拥有多个返回值 
    function test()
        return 1, 2, 3
    end

      2.1 多赋值中,函数为最后一个表达式,则返回所有值,否则只返回第一个值

        local x, y = test()  -- x = 1, y = 2, 3丢弃

        local x, y, z = 1, test(), 4  -- x = 1, y = 1, z = 4

      2.2 table中函数为最后一个表达式,则返回所有值,否则只返回第一个值

        t = {2, test()}  -- 2, 1, 2, 3

        t = {test(), 2}  -- 1, 2

      2.3 用()强制返回一个值

        print( test() )  -- 1, 2, 4

        print( (test()) )  -- 1

    3、不定长参数函数

      unpack()参数为一个table,默认从下标1开始返回所有元素

      lua5.1及之前,unpack为全局函数,可以直接使用,如 unpack(...)

      lua5.2后,unpack被移了到table下面,不可以直接使用,要带上table,如 table.unpack(...)

      lua5.1后 ...需要转换...后再使用,如local arg = {...}

      select("#", ...) -- 获取不定长参数的长度(包括nil)

      select(i, ...) -- 获取不定长参数中第i个位置的参数

    在孤独中思考,在思考中成熟,在成熟中升华
  • 相关阅读:
    UISB 手势进阶
    如何构建数仓指标体系及案例介绍
    人到中年(程序员35±)
    VirtualBox安装CentOS7.8系统
    人是怎么废掉的!
    数据仓库、数据中台、数据湖
    政务大数据之数据治理
    alpine 切换安装源,apk add慢
    Spring详解(四)——Spring IOC容器的设计与实现
    【JavaScript】展开语法
  • 原文地址:https://www.cnblogs.com/laogaoyang/p/6254911.html
Copyright © 2011-2022 走看看