컴파일러 오류 CS8171

참조를 사용하여 값 형식 변수를 초기화할 수 없습니다.

다음 샘플에서는 CS8171을 생성합니다.

// CS8171.cs (8,13)

class Test
{
    void A()
    {
        int a = 123;
        ref int x = ref a;
        var y = ref x;
    }
}

var y = ref x는 암시적으로 int y = ref x입니다. 여기서 int y는 값 변수입니다.

이 오류를 해결하려면

할당의 오른쪽에서 ref 한정자를 제거하면 이 오류가 수정됩니다.

class Test
{
    void A()
    {
        int a = 123;
        ref int x = ref a;
        var y = x;
    }
}