こんにちわ、C#大好きオオバです。

タイトルの通り、コルーチンで少しハマったので共有です。

IEnumerator Hoge (ref int foo)  
{
    yield return null;  
    foo = 1;  
}

このようにIEnumeratorを返す関数にはrefやoutが使えず、以下のようなエラーが出力されます。

error CS1623: Iterators cannot have ref, in or out parameters

C#の仕様としてイテレータにはref、outを使用することはできないようです。

こちらのStackOverflowでやり取りされている内容を読むと、はは〜ンってなります。
c# - Why can't iterator methods take either 'ref' or 'out' parameters? - Stack Overflow

##結論

コルーチンにref、outは使えない。

期間限定 最大95%オフセール
効率UPメガバンドル開催中!最大95%オフ!!!
期間 : 11月1日午後15時59分まで
オススメ記事
検証環境