Polymorphism
Replacement and Refinement
2 reasons for overriding
Abstract Class
a class with at least 1 pure virtual function is called an _________ ___________.
Late Binding (Dynamic Binding) (Runtime Binding)
a function call is resolved at runtime. now compiler determines the type of object at runtime, and then binds the function call.
Polymorphic Function
a function can accept parameters of different types plus different number of parameters
Virtual Member
a member function of a class that can be redefined in its derived classes is known as a _______ _________
Polymorphic Pointer
a pointer that can point to values of different type
Abstract function
a pure virtual function is sometimes called an _________ _________
Polymorphic Variable
a variable can contain values of different types
subclassed
abstract class can only be __________.
base class
an abstract class is a ________ ________ from which other classes can inherit
Virtual Functions
are used in c++ to support polymorphic behavior
Overloaded Function
by providing an ____________ __________ in derived class we can achieve overriding
binding
connecting the function call to function body
polymorphism
having multiple forms of one thing. in inheritance it is done by function overloading. when both base and derived class have member functions with same declaration but different definitions
Refinement
providing a function that calls the base class function but supplements it with additional actions
Replacement
providing a totally new function to fill the necessary operation
instantiate
the c++ compiler will not allow you to __________ an abstract class
concrete classes
the classes that can be used to instantiate objects are called __________ __________,
Pure Virtual functions
to put the expression = 0 in a class declaration.
early binding (static binding) (compile time)
when binding is done before being called