为什么要这段代码:
public IEnumerator Test()
{
}
给您一个错误:
错误CS0161'Test.GetEnumerator()':并非所有代码路径都返回一个值
Error CS0161 'Test.GetEnumerator()': not all code paths return a value
但是此代码:
public IEnumerator Test()
{
if(false)
yield return 0;
}
不是吗? (并按预期工作;首先MoveNext()返回false)
Doesn't? (and works as expected; first MoveNext() returns false)
当使用IEnumerators作为协程时,有时您想制作一个尚没有异步操作(不产生任何东西)但将来可能会做的协程(IEnumerator).
When using IEnumerators as coroutines, sometimes you want to make a coroutine (IEnumerator) that doesn't have an async operations yet (is not yielding anything) but might do that in future.