This is legal (safe) and works with the compiler
environment I am using:
CMyObject *ptr = NULL;
However, I get a run-time error (assert) when
I 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?
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.