更新:2007 年 11 月

错误消息

用户定义的转换必须是转换成封闭类型,或者从封闭类型转换

用户定义的转换例程必须转换成包含该例程的类,或者从包含该例程的类进行转换。

下面的示例生成 CS0556:

 复制代码
// CS0556.cs
namespace x
{
   public class ii
   {
      public class iii
      {
         public static implicit operator int(byte aa)   // CS0556
         // try the following line instead
         // public static implicit operator int(iii aa)
         {
            return 0;
         }
      }

      public static void Main()
      {
      }
   }
}