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
Out of fgets() and gets() which function is safe to use?
How do I run c++?
Why is c++ still used?
What are punctuators in c++?
What is virtual destructor? What is its use?
How can you quickly find the number of elements stored in a a) static array b) dynamic array ? Why is it difficult to store linked list in an array?how can you find the nodes with repetetive data in a linked list?
Can we make any program in c++ without using any header file and what is the shortest program in c++.
Can union be self referenced?
Write a single instruction that will store an EVEN random integer between 54 and 212 inclusive in the variable myran. (NOTE only generate EVEN random numbers)
What are the syntactic rules to be avoid ambiguity in multiple inheritance?
What do you mean by “this” pointer?
What is scope operator in c++?
Which software is best for c++ programming?
What is a syntax in c++?
Explain function overloading