Destructor, C/C++ Programming

Assignment Help:

Destructor:

The purpose of destructor is to free the memory when the compiler memory is reduced or not enough to execute certain program. Sometimes there may several objects opened and it may occupy more memory which may lead to reduced memory for new objects to be created. Therefore to increase the memory; objects which are idle may be destruct or killed using the destructor.  The destructor is written in same way as constructor with following rule.

  • Destructor should be preceded with (tilde).
  • Destructor cannot have any argument or return type.
  • Destructor is initiated implicitly.
  • One destructor only for each class.
  • Destructor must be public.
  • Destructor can be defined anywhere in the public generally it is written at the end.
  • Destructor can have prototype.

Destructor should have the class name.

 

class item

{ int number; float cost; public:

void putdata(void)

{cout<<"This is a test for destructor";

}

~item();

};

 

item::~item()

{cout<<"\nRelease memory\n";}

void main()

{item x;

x.putdata();

}

 

Note: The ~item is a destructor it will be invoked automatically as soon it the object comes out of the block.  There fore destructor should not be called in the main program.

 

A Sample program of how constructors are defined in different ways.

class item

{ int number;

float cost;

public:

item(void)

{number =10;

cost= 12.34;}

/*item(int x=200)

{number =x;

cost =222.345;} */ item(int a, float b); item(item &x);

void getdata(int a, float b);

//Create inline function inside a class void putdata(void)

{ cout<<"Number:" << number << "\n";

cout<<"Cost:" << cost << "\n";

}

};

void item::getdata(int a, float b)

{ number = a;

cost = b;

}

item::item(int a, float b)

{number =a; cost=b;}

item::item(item &i1)

{number=i1.number; cost=i1.cost;}

void main()

{

clrscr();

{item x; //create object x;

cout<<"\nConstructor without argument"<< "\n";

x.putdata();

}

{int a; float b;

cin>>a>>b;

item x(a,b); //create object x;

cout<<"\nConstructor with dynamic initialization"<< "\n";

x.putdata();

}

{item x(111,123.456); //create object x; cout<<"\nConstructor with arguments"<< "\n"; x.putdata();

item y(x); item z=x; item a; a=x;

cout<<"\nConstructor with object as argument"<< "\n";

y.putdata();

z.putdata();

a.putdata();

}

item y; //create object y; cout<<"\nobject y"<< "\n"; y.getdata(100, 399.95); y.putdata();

}


Related Discussions:- Destructor

C help, Need help with C network program

Need help with C network program

Shell sort - c program, Shell sort - C Program: Write a program to def...

Shell sort - C Program: Write a program to define shell sort. void main() {                  //program for sorting by select sort int a[20],i,k,j,n;   clrscr();

However shouldn''t i always use a printon() method instead , Q: however sho...

Q: however shouldn't I always use a printOn() method instead of a friend function? A: No. The usual cause people wish to always use a printOn() method instead of  a friend fu

Explain multiple inheritance, Multiple Inheritance Multiple inheritance ,...

Multiple Inheritance Multiple inheritance , as the name suggests , is  deriving a class from more than one class . The derived class inherits all the properties of all its base c

Algorithm , write an algorithm to swap values without using third variable

write an algorithm to swap values without using third variable

Minimum shelves, write a c++ program, that finds the minimum total number o...

write a c++ program, that finds the minimum total number of shelves, including the initial one, required for this loading process.

Get all table list from current database , i am using otlv4 for database co...

i am using otlv4 for database connecttvity, while i try to get all tables list from current database using query "$SQLTables" no output is displayed though programe compiles coretl

Constants, explain about symbolic constants with examples

explain about symbolic constants with examples

Assigment, Hi is there any chance to get assignment for fresher tutor

Hi is there any chance to get assignment for fresher tutor

Recursion, write a cprogram to calculate fraction through recursion

write a cprogram to calculate fraction through recursion

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd