How to avoid a class from instantiation?

Answers were Sorted based on User's Feedback



How to avoid a class from instantiation?..

Answer / vinay bondade

Have a Pure Virtual function in the class. This will not
allow to create an object of the class and hence cannot be
instatiated. But its a different thing to inherit the class
and give definition to Pure Virtual function, But the class
alone cannot be instantiated.The class hence,is also called
Abstract Base class.

Is This Answer Correct ?    11 Yes 1 No

How to avoid a class from instantiation?..

Answer / chandrakant

make the class Abstract it will not be instantiated
and the pure virtual function is used to avoid the base call
function to be get called if we make a function as virtual
only a derived class function will get called

Is This Answer Correct ?    3 Yes 0 No

How to avoid a class from instantiation?..

Answer / sanish joseph

Make an abstract class.abstract class cant b intialized.
I think so....

Is This Answer Correct ?    2 Yes 0 No

How to avoid a class from instantiation?..

Answer / achal

Making a constructor private is perfectly legal.
But now u can't create instance of that class.

Is This Answer Correct ?    1 Yes 1 No

How to avoid a class from instantiation?..

Answer / maniac_2004

if you want to construct a class whos constructor is private
then use a static method which constructs the object and
returns the pointer

class A
{
private: A();
public:
static A * createInstance();
};

A* A::getInstance()
{
return new A();
}

main(){ A::createInstance();}

This is similar to the "singleton" pattern...

Is This Answer Correct ?    0 Yes 0 No

How to avoid a class from instantiation?..

Answer / vidushi

Make the class abstract
abstract class abc
{
.....
.....
};

Is This Answer Correct ?    0 Yes 0 No

How to avoid a class from instantiation?..

Answer / ravi

We can aviod a class from instantiation by making all
variants of constructors as private. We can provide user
defined function like create member function under public
scope and call this private construcotrs from this create
function to create an object for that class.

Is This Answer Correct ?    3 Yes 5 No

How to avoid a class from instantiation?..

Answer / rsn

Yes, I agree with Ravi. Classes can be prevented from
instantiating and also from getting inherited using provate
constructors. The initialisation can be done using member
functions in which case it is called "clone" functions(I
hope so, Pls correct me if i'm wrong!).

Is This Answer Correct ?    2 Yes 4 No

Post New Answer

More C++ General Interview Questions

If dog is a friend of boy, and terrier derives from dog, is terrier a friend of boy?

0 Answers  


How does atoi function work?

0 Answers  


What is the use of cmath in c++?

0 Answers  


What is the benefit of encapsulation?

0 Answers  


What is the correct syntax for inheritance a) class aclass : public superclass b) class aclass inherit superclass c) class aclass <-superclass

0 Answers  






i want to know how to copy arrary without using any method or function. I have tried the below using System; class e4 { static void Main(string[] args) { int a,b; int[ ] m= new int[5]; int[ ] n= new int[5]; for(a=0;a<=4;a++) { Console.WriteLine("enter any value"); m[a]=Convert.ToInt32(Console.ReadLine()); m[a]=n[a]; } for(b=0;b<=4;b++) { Console.WriteLine(n[b]); } } } but it will give wrong result can anyone solve this problem

1 Answers   Reliance,


Should the member functions which are made public in the base class be hidden?

0 Answers  


How much do c++ programmers make?

0 Answers  


what is difference between internet and Internet?

12 Answers   College School Exams Tests, Microsoft, MIT, TCS,


Does dev c++ support c++ 11?

0 Answers  


What is the importance of mutable keyword?

0 Answers  


What is ios :: in in c++?

0 Answers  


Categories