Explain the new and delete operators, C/C++ Programming

Assignment Help:

The new and delete operators

The C language has explained library functions- malloc() and free() for dynamic allocation and de-allocation of memory. C++ gives yet another approach to allocate blocks of memory - the new operator. This operator allocates memory for a given size and returns a pointer to its starting point. C++ also gives delete, to release the memory allocated by new. The pointer returned by the new operator require not be typecasted.

e.g.

                char arr[100];     // Compile_time allocation of an array

                char *arr;                             // Character pointer

arr = new char[size];                       //Run time allocation of an

                                                                //array. Size can be a

                                                                //constant or a variable.

In the above example, new returns a pointer to a block of size bytes. It is synonymous with declaring a character array. Though, declaring an array is an example of static binding - the array is built at the compile-time. This array remains in existence right from the beginning of the program to its end, even if not in use. While, the array declared by new operator can be allocated memory only when required and can be released when over with, using the delete operator. This is an example of dynamic binding.

 


Related Discussions:- Explain the new and delete operators

Add words in dictionary - c++ program, Add words in Dictionary: void D...

Add words in Dictionary: void Dictionary::add( Object& objectToAdd ) {     if( !objectToAdd.isAssociation() )         ClassLib_error( __ENOTASSOC );     else

What is token in programming languages, T o k e n :  Tokens  are  s...

T o k e n :  Tokens  are  small  entities  in  a  program.    Example: identifiers,  keywords,  constants, operators, strings, etc.  These tokens are used almost in same wa

Explain the changing field width, Changing Field width The printf() and...

Changing Field width The printf() and scanf() functions from the standard library, use width specifier for controlling the width of its output . Similarly, the ostream class al

Computes the ackermann-peter a m-n function, (a) Write a procedure that com...

(a) Write a procedure that computes the Ackermann-Peter a(m,n) function. (b) Write a helper procedure that only allows the calculation of the Ackermann-Peter function for 0≤m

Write a program that computes the cost of a long distance ca, Write a progr...

Write a program that computes the cost of a long distance call. The cost of the call is determined according to the following rate schedules. a. A call made between 8:00 AM and 6:

Object Oriented Programming , You are required to give C++ implementation o...

You are required to give C++ implementation of following classes: 1. PropertyCategories 2. Plot 3. Flat 4. House Following is the description of all data member and member funct

Probabilistic hough transform, Two kinds of line detection are implemented ...

Two kinds of line detection are implemented in OpenCV, the Hough Transform and the probabilistic Hough transform. Assume that there are n feature points in an image and that it tak

What is the main advantage to using a data file, Problem: (a) What is ...

Problem: (a) What is the main advantage to using a data file? (b) What is meant by opening a data file? How is this accomplished? Illustrate your answer clearly with a sui

User-defined data type, Explain  U s e r - D e f i n e d D a t a...

Explain  U s e r - D e f i n e d D a t a T y p es? C has Union and Structure as user-defined data types.  C++ has class which looks like structure with a

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