title: Why must C# operator overloads be static?
body: <p>Why does C# require operator overloads to be static methods rather than member functions (like C++)? (Perhaps more specifically: what was the design motivation for this decision?)</p>