level 3
比如我有一个检测函数,中间有很多check_xxx的function
function check_error {
local reslut = check_a()
local reslut = check_b()
local reslut = check_c()
....
}
每一个check_xxx都会返回一个ture或者false
我想让reslut一旦拿到fasle就直接结束check_error这个函数
新手求问
2014年11月27日 06点11分
1
level 11
用c的短路求值,比如
if(check_a() && check_b() && check_c() &&.......)
{return;}
else
{...}
一旦if括号里面有一个是false,后面的check都不会计算了直接返回
2014年11月27日 07点11分
2
擦……原来不是c……
2014年11月27日 07点11分
好像写反了…… if(check_a() && check_b() && check_c() &&.......) {......} else {return;}
2014年11月27日 07点11分
level 11
不过lua好像也是有短路求值特性的,嗯,这个可以用
2014年11月27日 07点11分
3
这个我知道,lua里面可以用and代替&&,但不知道能不能用回调实现呢
2014年11月27日 08点11分
level 14
if check_a() then return end
2014年11月27日 08点11分
4
回复 sunuscn :就是那意思
2014年11月27日 09点11分