In C++, we can change the way operators work for user-defined types like objects and structures. This is known as operator overloading. For example, Suppose we have created three objects c1, c2, and result from a class named Complex that represents complex numbers.
Decrement operator can be overloaded in similar way as increment operator. Output Also, unary operators like: !, ~ etc can be overloaded in similar manner.