英語で読む

次の方法で共有


コンパイラ エラー CS8156

参照渡しによって渡したり返したりすることができないため、このコンテキストで使用できない式があります

次の例では CS8156 が生成されます。

C#
// CS8156.cs (7,27)

class Test
{
    delegate ref int D1();

    void Test1()
    {
        D1 d1 = () => ref 2 + 2;
    }
}

このエラーを解決するには

参照可能な変数を使用しないとき、値で返すようにリファクタリングすると、次のエラーが修正されます。

C#
class Test
{
    delegate int D1();

    void Test1()
    {
        D1 d1 = () => 2 + 2;
    }
}