zoukankan      html  css  js  c++  java
  • Lua 相关知识点

    #!/usr/bin/lua
    
    --[[
    虚变量
    当一个方法返回多个值时,有些返回值有时候用不到,要是声明很多变量来一一接收,显然 不太合适(不是不能)。
    Lua 提供了一个虚变量(dummy variable),以单个下划线('_')来命 名,用它来丢弃不需要的数值,仅仅起到占位的作用。
    ]] local t = {name="tome",age=12,gender="boy"} for _,v in pairs(t) do print(v) end --虚变量的应用 local _,finish = string.find("hello","he") print("finish:",finish)
    Lua Require函数
    
    1. require会搜索目录加载文件
    require使用的路径和普通我们看到的路径还有些区别,我们一般见到的路径都是一个目录列表。require的路径是一个模式列表,每一个模式指明一种由虚文件名
    (require的参数)转成实文件名的方法。更明确地说,每一个模式是一个包含可选的问号的文件名。匹配的时候Lua会首先将问号用虚文件名替换,然后看是否有
    这样的文件存在。如果不存在继续用同样的方法用第二个模式匹配
    
    2. require会判断是否文件已经加载避免重复加载同一文件。由于上述特征,require在Lua中是加载库的更好的函数。
    require会避免重复加载同一个文件两次。Lua保留一张所有已经加载的文件的列表(使用table保存)。如果一个加载的文件在表中存在require简单的返回;
    表中保留加载的文件的虚名,而不是实文件名。所以如果你使用不同的虚文件名require同一个文件两次,将会加载两次该文件。比如require "foo"和require "foo.lua",
    路径为"?;?.lua"将会加载foo.lua两次。我们也可以通过全局变量_LOADED访问文件名列表,这样我们就可以判断文件是否被加载过;同样我们也可以使用一点小技巧让
    require加载一个文件两次。比如,require "foo"之后_LOADED["foo"]将不为nil,我们可以将其赋值为nil,require "foo.lua"将会再次加载该文件。
    
    小结:require加载一个Lua文件,不论加载多少次,都是同一个对象
  • 相关阅读:
    分频
    加法器
    The best season is around you
    电影词汇
    DSP芯片和所有微处理器一样,以2的补码形式表示有符号数。
    乔布斯给妻子的结婚20周年情书
    webapp 处理表单
    看过戴旭之《中国面临被肢解的命运》之后
    转我在敏捷中国Open Space上发起的讨论主题——如何激励,用绩效考核吗?
    转QA不是QC,兼谈Lean、Kanban和TDD(上)
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/12978133.html
Copyright © 2011-2022 走看看