This is a simple C++ Program to demonstrate Function Name Overloading. An example of function name overloading within a C++ class many_name is used in this program. The constructor is overloaded as well as one of the methods to illustrate what can be done in C++ programming language to achieve polymorphism.
#include <iostream> class many_names { int length; int width; public: many_names(void); // Constructors many_names(int len); many_names(int len, int wid); void display(void); // Display functions void display(int one); void display(int one, int two); void display(float number); }; many_names::many_names(void) { length = 8; width = 8; } many_names::many_names(int len) { length = len; width = 8; } many_names::many_names(int len, int wid) { length = len; width = wid; } void many_names::display(void) { cout << "From void display function, area = " << length * width << "\n"; } void many_names::display(int one) { cout << "From int display function, area = " << length * width << "\n"; } void many_names::display(int one, int two) { cout << "From two int display function, area = " << length * width << "\n"; } void many_names::display(float number) { cout << "From float display function, area = " << length * width << "\n"; } main() { many_names small, medium(10), large(12, 15); int gross = 144; float pi = 3.1415, payroll = 12.50; small.display(); small.display(100); small.display(gross,100); small.display(payroll); medium.display(); large.display(pi); } // Result of execution // From void display function, area = 64 // From int display function, area = 64 // From two int display function, area = 64 // From float display function, area = 64 // From void display function, area = 80 // From float display function, area = 180