What is Pure Virtual Function? Why and when it is used ?
Answer Posted / apple dugar
A virtual function that is initialized to zero (0) is
referred to as pure virtual function.It has no body and
hence also known as do-nothing or the dummy function.
Example: virtual void show()=0;
A class containing one or more pure virtual functions is
called an Abstract class, which means an instance of such
class can't be created (but pointer to that class can be
created).We should use pure virtual function if we do not
want to instantiate a class but make it act as a base class
for all the classes that derive from it.An important thing
to note about pure virtual functions is that these
functions must be overridden in all the derived classes
otherwise the compile would flag out an error.
Sample program:
class alpha
{
public:virtual void show()=0; //pure virtual function
};
class beta:public alpha
{
public:void show() //overriding
{
cout<<"OOP in C++";
}
};
void main()
{
alpha *p;
beta b;
p=&b;
p->show();
}
Output: OOP in C++
| Is This Answer Correct ? | 118 Yes | 13 No |
Post New Answer View All Answers
What is the size of integer variable?
Is c++ still in demand?
How can an improvement in the quality of software be done by try/catch/throw?
Why do we use structure in c++?
Ask to write virtual base class code?
Is vector a class in c++?
What are put and get pointers?
How c functions prevents rework and therefore saves the programers time as wel as length of the code ?
What are the three forms of cin.get() and what are their differences?
Explain the different access specifiers for the class member in c++.
Explain 'this' pointer and what would happen if a pointer is deleted twice?
How do you invoke a base member function from a derived class in which you have not overridden that function?
What is namespace std; and what is consists of?
What is the latest version on c++?
What are separators in c++?