A single function name which is used to denote two or more function
bodies is said to be overloaded.
-
A common example occurs in almost all languages, where + means both integer
and floating addition.
-
Determination of which function to execute is made by examing the arguments.
-
Depending upon language and form used, can either be made at compile-time or
at run-time.
-
Should not be confused with overriding or refinement - functions need not
be related by classes.