Abstract Class
An abstract class is always a base class
It contains at least one pure virtual function
We cannot create an instance of abstract class
Pure Virtual Function
A pure virtual function is a function with nobody
It is not defined in the base class
It is declared as: virtual void virtualfunname()=0;
A derived class must override the function
Otherwise, the compiler will give an error
It is up to a derived class to implement the
function
Ex:-
#include<iostream> using namespace std; class abstractinterface { public: virtual void numbers()=0; void input(); int a, b; }; void abstractinterface::input() { cout<< "Enter the numbers\n"; cin>>a>>b; } class add : public abstractinterface { public: void numbers() { int sum; sum=a+b; cout<<"sum is "<<sum<<"\n"; } }; class sub : public abstractinterface { public: void numbers() { int diff; diff=a-b; cout<<"diff is "<<diff<<"\n"; } }; int main() { add obj1; obj1.input(); obj1.numbers(); sub obj2; obj2.input(); obj2.numbers(); return 0; }
Output:- Enter
the numbers
5
6
sum is 11
Enter the numbers
5
6
diff is -1
0 Comments