Parameterized constructors are constructors that have a parameter. However, a default constructor does not have any parameter, but in cases where it is needed, a constructor can have a parameter.
In addition, if you want to use a parameterized constructor, you can assign different values to data members of different objects, bypassing the appropriate values as an argument. It helps in assigning an initial value to an object at the time of its creation.
Example:
#include <iostream>
class Line
{
public:
void setLength( double len );
double getLength( void );
Line(double len); // This is the constructor
private:
double length;
};
// Member functions definitions including constructor
Line::Line( double len)
{
cout << "Object is being created, length = " << len << endl;
length = len;
}
void Line::setLength( double len )
{
length = len;
}
double Line::getLength( void )
{
return length;
}
// Main function for the program
void main( )
{
Line line(10.0);
// get initially set length.
cout << "Length of line : " << line.getLength() <<endl;
// set line length again
line.setLength(6.0);
cout << "Length of line : " << line.getLength() <<endl;
getch();
}