Operator overloading
| Polymorphism | 
|---|
| Ad hoc polymorphism | 
| Parametric polymorphism | 
| Subtyping | 
In computer programming, operator overloading, sometimes termed operator ad hoc polymorphism, is a specific case of polymorphism, where different operators have different implementations depending on their arguments. Operator overloading is generally defined by a programming language, a programmer, or both.