Destructor in C++ Tamil

Destructor என்பது constructor போலவே ஒரு special type of member function. இது ஒரு object-ன் access area முடியும்போது தானாகவே call செய்யப்படும். ஆகையால் software-ஐ உருவாக்கும் Programmer ஒவ்வொரு முறையும் memory space-ஐ clear செய்யும் வேலையில் இருந்து விடுபட்டுள்ளனர். ஏனெனில் destructor -ஐ பயன்படுத்தும்போது ஒவ்வொரு முறையும் object மூலம் member function-ஆல் create செய்யப்பட்ட memory space-ஐ அழித்துவிடுகிறது.ஆகவே இது memory-ஐ deallocate செய்ய பயன்படுத்தபடுகிறது.

Rules of Destructor

  • public-ல் declare செய்யவேண்டும்
  • இதற்க்கு return datatype கிடையாது
  • இதற்க்கு argument அல்லது parameters கிடையாது
  • destructor-க்கு முன்கபாக tilde(~) symbol பயன்படுத்தவேண்டும்
  • ஒரு program-ல் ஒரே ஒரு destructor மட்டுமே கொடுக்க முடியும்
  • destructor-ஐ overloading செய்ய முடியாது. ஏனெனில் இதற்க்கு arguments கிடையாது.
//Syntax for destructor
~Classname( ){
	Statements;
}

Program

#include<iostream.h>
#include<conio.h>
class exam{
private:
    int sno,mark1,mark2;
public:
exam( ){ //constructor
  sno=mark1=mark2=100;
}
void showdata()	{
	cout<<sno<<mark1<<mark2
}
~exam(){ //Destructor
	cout<<"destructo is invoked";
}};

int main(){
  exam e;
  e.showdata();
  exam e1(1,90,90);
  clrscr();
  e1.showdata();
  return 0;
}

Output:

Sno = 100 Mark1 = 100 Mark2 =100
Sno = 100 Mark1 = 100 Mark2 =100
destructor is invoked

Comments