Difference between delete and delete[]?

Answers were Sorted based on User's Feedback



Difference between delete and delete[]?..

Answer / sachin mahajan

When we want to free a memory allocated to a pointer to an
object then "delete" is used.
Ex
int * p;
p=new int;
// now to free the memory
delete p;
But when we have allocated memory for array of objects like
int * p= new int(10); //pointer to an array of 10 integer
then to free memory equal to 10 integers
delete []p;
NOTE: One can free the memory even by "delete p;" But it
will free only the first element memory.


Is This Answer Correct ?    70 Yes 9 No

Difference between delete and delete[]?..

Answer / laxman

delete is only just to delete a variable which is created
by new operator. delete[] , it deletes the array where the
varaialbe points .

Is This Answer Correct ?    24 Yes 8 No

Difference between delete and delete[]?..

Answer / vikas

If p is pointer to an array and is allocated memory on
heap, then delete p would call the destructor of the first
element but will free up the whole block. More info at:

http://www.cppquestions.com/viewtopic.php?f=27&t=13

Is This Answer Correct ?    14 Yes 5 No

Difference between delete and delete[]?..

Answer / namitha

delete is a function used to deallocate the storage space.
delete[] is a function used to deallocate the storage space
of an array.

Is This Answer Correct ?    11 Yes 8 No

Difference between delete and delete[]?..

Answer / sunita shukla

Delete p deallocate memory pointed to by p and delete []p deallocate array. But delete p will delete only p[0]. Other array's Size-1 entries will not be deleted and this memory will leak.

Is This Answer Correct ?    3 Yes 0 No

Post New Answer

More C++ General Interview Questions

What is the difference between passing by reference and passing a reference?

0 Answers  


Explain what is oop?

0 Answers  


Which is best c++ or java?

0 Answers  


What are the total number of lines written by you in C/C++? What is the most complicated or valuable program written in C/C++?

2 Answers   Intel,


Can we remove an element in a single linked list without traversing? Lets suppose the link list is like this 1 2 3 4 5 6 We need to remove 4 from this list (without traversing from beginning) and the final link list shud be 1 2 3 5 6 only thing we know is the pointer to element "4". How can we remove "4" and link "3" to "5"?

6 Answers   CSC,






Are there any special rules about inlining?

0 Answers  


What is the use of endl?

0 Answers  


What is the benefit of encapsulation?

0 Answers  


Write any small program that will compile in "C" but not in "C++"?

4 Answers  


What is the function of I/O library in C++ ?

0 Answers   HCL,


Why is c++ still popular?

0 Answers  


Is python written in c or c++?

0 Answers  


Categories