Index
Introduction
A constructor is a special type of function in a class that is automatically called when an object of the class is created. It is used to initialize the object’s properties with some initial values.
Key Points About Constructor
Same Name as Class: A constructor has the same name as the class.
No Return Type: Unlike other functions, constructors do not have a return type, not even void
.
Automatic Invocation: A constructor is automatically called when an object is created.
For example :
The given below code defines a Student
class with a constructor that initializes the attributes name
and age
to default values. When an object of the class is created, the constructor is called automatically, and the default values are assigned to the object, which are then displayed using the displayInfo()
method.
#include <iostream>
using namespace std;
// Class Definition
class Student {
public:
string name;
int age;
// Constructor
Student() {
name = "Unknown"; // Default value for name
age = 0; // Default value for age
}
// Method to display student information
void displayInfo() {
cout << "Name: " << name << endl;
cout << "Age: " << age << endl;
}
};
// Main function
int main() {
// Create an object of the Student class
Student student1;
// Call the displayInfo method
student1.displayInfo(); // It will print the default values set in the constructor
return 0;
}
Output:
Name: Unknown
Age: 0
Explanation:
Step 1: Class Definition:
class Student {
public:
string name;
int age;
- The class
Student
is defined with two public attributes:name
: A string to store the student’s name.age
: An integer to store the student’s age.
Step 2: Create a Constructor:
Student() {
name = "Unknown"; // Default value for name
age = 0; // Default value for age
}
- This is a constructor for the
Student
class. - A constructor is a special method that is automatically called when an object of the class is created.
- In this constructor, the values of
name
andage
are initialized to default values:name = "Unknown"
: If no name is provided, the name will be set to"Unknown"
.age = 0
: If no age is provided, the age will be set to0
.
Step 3: Method to Display Information:
void displayInfo() {
cout << "Name: " << name << endl;
cout << "Age: " << age << endl;
}
- This method
displayInfo()
is used to print the student’s information. - It uses
cout
to display the values of thename
andage
attributes.
Step 4: Main Function:
int main() {
// Create an object of the Student class
Student student1;
// Call the displayInfo method
student1.displayInfo(); // It will print the default values set in the constructor
return 0;
}
- In the
main()
function, an objectstudent1
of theStudent
class is created. - When the object is created, the constructor is automatically called, and the default values
"Unknown"
forname
and0
forage
are set. - Then, the
displayInfo()
method is called to print these values.