Прочитать на английском

Поделиться через


Ошибка компилятора CS0562

Тип параметра унарного оператора должен быть вмещающим.

Объявление метода для перегрузки оператора должно следовать определенным правилам. Для получения дополнительной информации см. раздел Перегрузка операторов.

Следующий пример приводит к возникновению ошибки CS0562:

C#
// CS0562.cs  
public class iii  
{  
    public static implicit operator int(iii x)  
    {  
        return 0;  
    }  
  
    public static implicit operator iii(int x)  
    {  
        return null;  
    }  
  
    public static iii operator +(int aa)   // CS0562  
    // try the following line instead  
    // public static iii operator +(iii aa)  
    {  
        return (iii)0;  
    }  
  
    public static void Main()  
    {  
    }  
}