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

Data structure and algorithm, implement two stacks in one array A[1...n] in...

implement two stacks in one array A[1...n] in such a way that neither stack overflows unless the total number of elements in both stacks together is n. For this you need to produce

Discount program, Build a program that calculates a discount for items base...

Build a program that calculates a discount for items based on quantity bought each item is $99.99 Ask user to enter the quantity of the items Get the quantity of items from the u

Functions overloading, Functions Overloading This a capability in which...

Functions Overloading This a capability in which a C++ program can have several functions performing similar tasks on different data types. When an overloaded function is calle

Write a program in c++ to read n numbers in an array, Problem Write a p...

Problem Write a program in C++ to read N numbers in an array, the user should be able to search a particular number in the array using sequential search algorithm. Writing a

Programing, Define a structure to store roll no, name and marks of a studen...

Define a structure to store roll no, name and marks of a student. b) Using the structure of Q2. a), above write a ''C'' program to create a file "student.dat". There must be one r

Implementation of the dictionary class, Implementation of the Dictionary cl...

Implementation of the Dictionary class: int Dictionary::find_word(char *s) {    char word[81];    for (int i = 0; i       if (stricmp(words[i].get_word(word),s) =

Araay, create two array names and grade .in first array you have to store t...

create two array names and grade .in first array you have to store thease 10 names 1.a,2.3.r,4.s,5.l,6.k,7.n,8.b,9.z,10.d you have to enter grades for thease students.te program mu

What are literals, Literals (Constants) Constants are data storage loca...

Literals (Constants) Constants are data storage locations whose address is not accessible for the user. Their value is not altered during the course of the program. Literal

LOOPS, HOW CAN WE EASLY LEARN C++

HOW CAN WE EASLY LEARN C++

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