Constructor In C++

ஒரு constructor என்பது ஒரு non-static special type of member function. ஏனினில் ஒரு class-ன் name மற்றும் Constructor-ன் name இவை இரண்டும் ஒரேமாதிரியாக இருக்கும். அதேபோல் constructor-க்கு retrun type கிடையாது. இது எபோழுதும் puplic ஆக மட்டுமே இருக்கும். இது ஒரு class-ன் object create ஆகும்போது இந்த constructor தானாகவே call செய்யபடுகிறது.

compiler ஒரு member function-னின் name மற்றும் அதன் return datatype வைத்து அது ஒரு constructor என்பதை identify செய்துகொள்ளும்

Rules of Constructor

  1. Class name மற்றும் function name ஒரேமாதிரியாக இருக்க வேண்டும்
  2. இது public-ல் declare செய்யபட்டிருக்கவேண்டும்
  3. இதற்க்கு return type கிடையாது
  4. இதில் argument இருக்கலாம் அல்லது இல்லாமலும் போகலாம் (optional)
  5. arguments இல்லையனில், அது default constructor என்று அழைக்கபடுகிறது.
  6. arguments இருந்தால், அது overloaded constructor என்று அழைக்கபடுகிறது.
  7. ஒரு program-ல் எத்தனை constructor வேண்டுமானாலும் இருக்கலாம். ஆனால் ஒரு class-க்கு ஒரு default constructor மட்டும் தான் இருக்க முடியும்.
  8. இது Virtual function ஆக இருக்க கூடாது.
  9. இது அதனுடைய address-ஐ reffer செய்யாது
  10. இதை inherit செய்ய இயலாது
//Syntax for constructor
Classname( ){
	Statements;
}
Types of constructor
  1. Default constructor
  2. argument constructor
#include <iostream>
using namespace std;
class construct { 
public: 
    int a, b; 
    // Default Constructor 
    construct(){ 
        a = 10; 
        b = 20; 
    } 
     // Argument Constructor 
    construct(int x,int y){ 
        cout << "x: " << x <<"y: "<< y <<endl; 
    } 
}; 
int main() { 
    // Default constructor called automatically when the object is created 
    construct c; 
    cout << "a: " << c.a << endl; 
    cout  << "b: " << c.b;
    
    //argument constructor call
    construct c1(500,1000);
    return 0; 
} 
Output:
a: 10
b: 20
x: 500 y: 1000

Comments