首页 > 其他分享 >lua:三元运算符

lua:三元运算符

时间:2022-09-23 15:22:48浏览次数:78  
标签:end else 运算符 lua return 三元

lua里面没有类似C++的三元运算符 a?b:c

第一种实现 if-else

-- 三元运算符
function iif(condition, a, b)
    if condition then
        return a
    else
        return b
    end
end

第二种实现 一般化的 a and b or c

(a and {b} or {c})[1]

原理参考:https://www.cnblogs.com/oberon-zjt0806/p/13337577.html


建议使用第一种,清晰简单。

标签:end,else,运算符,lua,return,三元
From: https://www.cnblogs.com/txtp/p/16722862.html

相关文章

  • lua相关
    1.luagettablepushstring先pushstring压住键值此时栈中有键值和table然后gettable(L,-2)从table中获取值并覆盖掉键值放入栈中之后从-1的栈顶获取值进行操作pop......
  • lua的c扩展
    ubuntu%cathello.c#include<stdio.h>#include<lua.h>#include<lualib.h>#include<lauxlib.h>staticinthello(lua_State*L){printf("hello\n");re......
  • Lua脚本在Redis事务中的应用实践
    使用过Redis事务的应该清楚,Redis事务实现是通过打包多条命令,单独的隔离操作,事务中的所有命令都会按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打......
  • 变量的命名规范 运算符
    变量的命名规范所有变量,方法,类名:都要做到见名知意类成员变量:首字母小写和驼峰原则:例如monthSalarylastName除了第一个单词后面单词首字母大写局部变量:首字母小写和驼......
  • php两个问号??表示什么意思,PHP两个问号运算符,双问号表达式
    说在php源代码中看到有两个问号??不知道是什么意思。其实两个问题??是php7新推出的表达式,c=a??b;表示如果a非空,则c=a,如果a为空,则c=b;  php7以前经常使......
  • 关系运算符重载,以及在关系运算符重载发现的函数参数什么时候需要用引用
    在学习关系运算符重载的时候,看见重载函数中的函数参数使用的是引用类型,于是在思考为什么需要用引用,而不是非引用,例如:引用格式:booloperator==(Person&p)非引用格式:bool......
  • Go语言基础之运算符
    运算符Go语言内置的运算符有:算术运算符关系运算符逻辑运算符位运算符赋值运算符算术运算符运算符描述+相加-相减*相乘/相除%求余......
  • 1102_REDIS中使用LUA
    定时删除公司费用查询费用并删除数据,保持原子操作准备数据saddsms:send:batchDeduct:company000002sismembersms:send:batchDeduct:company000002hgetallsm......
  • 运算符
    运算符算术运算符算术运算符:+,-,*,/,%,++,-- ​​publicclassDemo5{publicstaticvoidmain(String[]args){//二元运算符  +,-,*,/,%inta=......
  • 运算符重载
    运算符重载一、加号重载运算符-实现两个自定义数据进行相加classPerson{public:Person(){};Person(inta,intb){this->m_A=a;......