I get a runtime error when I use the array delete operator

Question:
This is legal (safe) and works with the compilerenvironment I am using:

 CMyObject *ptr = NULL;  delete ptr;
However, I get a run-time error (assert) whenI use the array delete operator:
long *array = NULL;  delete [] array;
Is the environment right or is it legal C++ to use array delete on a NULL pointer?

Answer:
It is perfectly legal and safe to use delete or delete [] on null pointers. When called with a zero argument the operation has no effect.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: