C++ Concept Map

Polymorphism

Polymorphism literally means "many shapes". It refers to the properties of a language which alter the normal meaning of a language construct.

C++ exhibits four kinds of polymorphism:

  1. overloaded functions
    the definition attached to a function name is altered according to the number of type of its parameters (its signature)
  2. sub-type expressions
    the evaluation of an expression is altered according to the inheritance relationship between classes
  3. generic classes (and functions)
    the declaration of a class is altered according to the value of compile-time parameters
  4. dynamic binding of functions
    the evaluation of an function call expression is altered according to the actual type of the caller object

Please mail any corrections and/or suggestions to Roger Hartley at
rth@cs.nmsu.edu

Copyright © 2003 Roger Hartley