With the right design, there is no difference between "a == 5" and "5 == a". But there is a special situation where there is "a == 5" and "5 == a" other behavior. It is very difficult, but it is possible.
However, this example is built to demonstrate the situation, but I do not recommend it . He thinks so.
Example:
public class BadClass { public int Value; public static implicit operator int( BadClass c ) { return c.Value; }
source share