C++ language allows programmers to specify more than one definition for a function name or an operator. This is one of the many exciting features that Object Oriented Language offers programmers. It is one of the important techniques that has extended the power and flexibility of C++. In this chapter, you will learn about the types of overloading and how they are used within a C++ program.

What is Overloading?

Overloading is the technique to use a single identifier to define various methods or techniques of a class that differs in their input and output parameters. The concept of overloading is generally used when a program block conceptually executes the same task but with a slight distinctness in a set of parameters.

Overloading is a concept used to avoid redundant code where the same method name or operator is used multiple times but with a different set of parameters or number of operands. The actual method that gets called during runtime is resolved at compile time, thus avoiding runtime errors. Overloading provides code clarity; reduce complexity, and increases runtime presentation of a code.

There are two types of overloading provided by C++. These are: