Мы можем перегрузить = оператор, но не напрямую.
using System;
class Over
{
private int a;
public Over(int a )
{
this.a = a;
}
public int A { get => a; }
public static implicit operator int(Over obj)
{
return obj.A;
}
}
class yo
{
public static void Main()
{
Over over = new Over(10);
int a = over;
}
}
Здесь, когда вы вызываете этот метод перегрузки оператора, он вызывает оператор =, чтобы преобразовать его в int. Вы не можете напрямую перегружать "=", но этот способ кода означает то же самое.