Assume the following code:
Foo* p = new (std::nothrow) Foo();
\'p\' will equal 0 if we are out of heap memory.
What happens if we a
Foo's constructor can still throw exceptions and they will fall through.
Foo
The constructor is not called until after the memory is allocated.