Ask a Teacher



when we use constructor function in c++

A member function with the same name as its class is a constructor function. Constructors cannot return values. Specifying a constructor with a return type is an error, as is taking the address of a constructor.

If a class has a constructor, each object of that type is initialized with the constructor prior to use in a program. (For more information about initialization, see Initialization Using Special Member Functions.)

Constructors are called at the point an object is created. Objects are created as:
  • Global (file-scoped or externally linked) objects.
  • Local objects, within a function or smaller enclosing block.
  • Dynamic objects, using the new operator. The new operator allocates an object on the program heap or "free store."
  • Temporary objects created by explicitly calling a constructor. (For more information, see Temporary Objects.)
  • Temporary objects created implicitly by the compiler. (For more information, see Temporary Objects.)
  • Data members of another class. Creating objects of class type, where the class type is composed of other class-type variables, causes each object in the class to be created.
  • Base class sub object of a class. Creating objects of derived class type causes the base class components to be created.

Example
:

 // constructors.cpp
// compile with: /c
class MyClass {
public:
   MyClass(){}
   MyClass(int i) : m_i(i) {}

private:
   int m_i;
};



















comments powered by Disqus