【问题标题】:Enumeration (enum in lua) .Want to use enum in lua5.2.4枚举(lua中的枚举)。想在lua5.2.4中使用枚举
【发布时间】:2021-12-30 08:50:48
【问题描述】:

我有一个条件,我想在我的 lua 脚本中使用枚举,比如 SUCCESS 我可以给 1,对于 FAILURE 我可以给 0 我正在使用 lua 版本 5.2.4 任何人都可以帮助我如何使用枚举 我想使用枚举

elseif(cc_config_cmd == "DELETE" and file_found==1)then
            api:executeString("callcenter_config queue unload " .. queue_name)
            stream:write("1")
else
            stream:write("0")

end

【问题讨论】:

    标签: enums lua freeswitch


    【解决方案1】:

    Lua 中没有枚举。

    只需定义变量。

    SUCCESS = "1"
    FAILURE = "0"
    
    stream:write(SUCCESS)
    

    或将其放入与枚举样式语法非常相似的表中。

    Result = {SUCCESS = "1", FAILURE = "0"}
    stream:write(Result.SUCCESS)
    

    【讨论】:

      【解决方案2】:

      据我所知,Lua中没有enums,可以使用你当前代码等字符串。字符串将被保留在Lua Virtual Machine 中,因此在内存中字符串不会重复。

      另一种选择是使用数字代替字符串。

      local COMMAND_DELETE = 1
      local COMMAND_TEST_1 = 2
      local COMMAND_TEST_2 = 3
      

      其他选项是使用第三方软件包,例如 enum 软件包,或者更进一步,使用 Lua Preprocessor

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-22
        • 2015-08-08
        • 2010-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-10
        相关资源
        最近更新 更多