Dynamic Binding - OOPs concept in C++

How Dynamic Binding is used in OOPs concept of C++?

Explanation

In OOPs Dynamic Binding refers to linking a procedure call to the code that will be executed only at run time. The code associated with the procedure in not known until the program is executed, which is also known as late binding.

Example :


#include <iostream.h>
int Square(int x)
{ return x*x; }
int Cube(int x)
{ return x*x*x; }
int main()
{
int x =10;
int choice;
do
{
cout << "Enter 0 for square value, 1 for cube value: ";
cin >> choice;
} while (choice < 0 || choice > 1);
int (*ptr) (int); switch (choice)
{
case 0: ptr = Square; break;
case 1: ptr = Cube; break;
} cout << "The result is: " << ptr(x) << endl;
return 0; }

Result :

Enter 0 for square value, 1 for cube value:0
The result is:100

In the above OOPs example the functions "Square" and "Cube" are called only at runtime based on the value given for "choice". Then a pointer "ptr" is used to call the appropriate function to get the result.

C++ Tutorial


Ask Questions

Ask Question