C++ virtual function is a member function of a class, whose
functionality can be over-ridden in its derived classes. The
whole function body can be replaced with a new set of
implementation in the derived class. The concept of c++ virtual
functions is different from C++ Function overloading. C++
Virtual Function - Properties: C++ virtual function is, - A
member function of a class - Declared with virtual keyword -
Usually has a different functionality in the derived class - A
function call is resolved at run-time The difference between a
non-virtual c++ member function and a virtual member function
is, the non-virtual member functions are resolved at compile
time. This mechanism is called static binding. Where as the c++
virtual member functions are resolved during run-time. This
mechanism is known as dynamic binding. C++ Virtual Function -
Reasons: The most prominent reason why a C++ virtual function
will be used is to have a different functionality in the derived
class. For example a Create function in a cl