What you are doing is called overloading, where the compiler determines the correct function while it is compiling.
I'd be careful about using the term "Polymorphism" here because there is something in C++ that is traditionally given that term, but behaves very differently from overloading. In that, the actual function that is executed is not determined until runtime.
|