In java a final class is a class that cannot be derived. How
can you make a similar class in C++
Answer Posted / cpp master
Using virtual base classes. The most derived class has to
initialize all the virtual base class in the inheritance
hierarchy. To make such a class simply create a empty class
with a private constructor and mark the class to be made
non derivable as the friend of that class. Now simply
public virtually derive the non derivable with the empty
class. Below is the example code:
class UnDerivable;
class dummy{
private:
dummy(){}
friend class UnDerivable;
};
class UnDerivable: virtual public dummy
{
};
//try deriving fro the underivable class
class deriveUnderivable:public UnDerivable
{
};
int main()
{
UnDerivable ud;
deriveUnderivable uud; //will give an error
return 0;
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What is array in c++ pdf?
Differentiate between a constructor and a destructor in c++.
What is oops in c++?
What does it mean to declare a member function as virtual?
What is :: operator in c++?
Is overriding possible in c++?
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?
What are the general quetions are in DEna bank manager IT/System interviews?
What is object in c++ example?
Explain the difference between static and dynamic binding of functions?
What is a c++ map?
What is an incomplete type in c++?
What is atoi?
Discuss the effects occur, after an exception thrown by a member function is unspecified by an exception specification?
What is the difference between new() and malloc()?