コンパイラ エラー CS0077

更新 : 2007 年 11 月

エラー メッセージ

as 演算子は参照型または Null 許容型で使用してください ('int' は Null 非許容の値型です)。

as 演算子に値型が渡されました。as は null を返すことができるため、渡すことができるのは参照型または null 許容型だけです。NULL 許容型の詳細については、「null 許容型 (C# プログラミング ガイド)」を参照してください。

次の例では CS0077 エラーが生成されます。

// CS0077.cs
using System;

class C
{
}

struct S
{
}

class M
{
   public static void Main()
   {
      object o1, o2;
      C c;
      S s;

      o1 = new C();
      o2 = new S();

      s = o2 as S;  // CS0077, S is not a reference type.
      // try the following line instead
      // c = o1 as C;
   }
}