Operator overloading (a feature that was initially
introduced in C++) is a concept that enables us to redefine the existing
operators so that they can be used on user defined types like classes and structs.
This article discusses Operator Overloading in C# with a lot of code samples.