Appendix C
Overload Resolution
Overload resolution is the process that selects the function to call for a given call expression. Consider the following simple example:
void display_num(int); // #1 void display_num(double); // #2 int main() { display_num(399); // #1 matches better than #2 display_num(3.99); // #2 matches better than #1 }
In this example, the function name display_num()
is said to be overloaded. When this name is used in a call, a C++ compiler must therefore distinguish between the various candidates using additional information; mostly, this information is the types of the call arguments. In our example, it makes intuitive sense to call the int
version when the function is called with ...
Get C++ Templates: The Complete Guide, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.