佚名通过本文主要向大家介绍了如何理解lua中的“resume返回除了true以外的其他部分将作为参数传递给相应的yield”等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:如何理解lua中的“resume 返回除了 true 以外的其他部分将作为参数传递给相应的 yield”
描述:
解决方案1:
描述:
对应示例代码如下:
co = coroutine.create(function ()
print("co", coroutine.yield())
end)
coroutine.resume(co)
coroutine.resume(co, 4, 5)
这里可以理解为resume将输入参数作为对应yield的输出参数吗?
PS:输出结果为
co 4 5
解决方案1:
resume 返回除了 true 以外的其他部分将作为参数传递给相应的 yield
这句可能是翻译的,不是很顺,大概的意思是:resume的返回值中除了 true 以外的其他部分将作为参数传递给相应的 yield。
换言之,coroutine.resume会返回true,以及一组传给yield的参数。(当然如果碰到没做预防措施的错误,会返回false和错误信息。)
这里可以理解为resume将输入参数作为对应yield的输出参数吗?
是的。coroutine.resume(co, 4, 5)
,其中4, 5
会被传递给yield,然后yield会返回4, 5
。