as 연산자는 참조 형식 또는 nullable 형식과 함께 사용해야 합니다. 'int'는 null을 허용하지 않는 값 형식입니다.
as 연산자가 값 형식으로 전달되었습니다. as는 null을 반환할 수 있으므로 참조 형식 또는 null 허용 값 형식만 전달할 수 있습니다.
그러나 is 연산자와 패턴 일치를 사용하여 한 단계에서 형식 검사 및 할당을 직접 수행할 수 있습니다.
다음 샘플에서는 CS0077을 생성합니다.
// CS0077.cs
using System;
struct S
{
}
class M
{
public static void Main()
{
object o;
S s;
o = new S();
s = o as S; // CS0077, S is not a reference type
// Use pattern matching instead of as
if (o is S sValue)
{
s = sValue;
}
}
}
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET