Function overloading: Difference between revisions

Content deleted Content added
m + category:Programming
LittleDan (talk | contribs)
No edit summary
Line 1:
'''Method overloading''' is a feature found in various [[programming language]]s such as [[C_Plus_Plus|C++]] and [[Java programming language|Java]] that allows the creation of several [[subprogram|function]]s with the same name which differ from each other in terms of the type of the input and the type of the output of the function.
 
An example of this would be a square function which takes a number and returns the square of that number. In this case, it is often necessary to create different functions for integer and floating point numbers.
 
Method overloading is usually associated with [[static typing|statically-typed]] programming languages which enforce type checking in function calls. When overloading a method, you are really just making a number of different methods that happen to have the same name. It is resolved at [[compile time]] which of these methods are used.
 
Method overloading should not be confused with [[ad-hoc polymorphism]] or [[virtual function]]s. In those, the correct method is chosen at runtime.
{{compu-lang-stub}}
 
[[Category:Programming]]